【发布时间】:2016-12-31 12:20:42
【问题描述】:
有没有办法,我们可以像在weblogic 服务器中那样在WildFly 10 中将jar 部署为库/部署?或者我们可以将罐子放在服务器的任何文件夹中并将这些依赖项定义为provided?
【问题讨论】:
标签: java spring web-applications deployment wildfly-10
有没有办法,我们可以像在weblogic 服务器中那样在WildFly 10 中将jar 部署为库/部署?或者我们可以将罐子放在服务器的任何文件夹中并将这些依赖项定义为provided?
【问题讨论】:
标签: java spring web-applications deployment wildfly-10
我在WildFly 10 服务器上部署jars 而不是制作部分war 文件的方法定义如下:
1) 把你所有的罐子放在wildfly\modules\system\layers\base\com\abcProject\main
并放置一个名为module.xml 的文件,内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<module xmlns="urn:jboss:module:1.3" name="com.abcProject">
<resources>
<resource-root path="aspectjrt-1.6.8.jar"/>
<resource-root path="aspectjweaver-1.6.8.jar"/>
<resource-root path="aopalliance-1.0.jar"/>
<resource-root path="guava-18.0.jar"/>
</resources>
<dependencies>
<module name="javaee.api"/>
<module name="org.apache.commons.logging"/>
<module name="org.jboss.vfs"/>
</dependencies>
其中resources 是您的abcProject/main 文件夹中存在的所有jars,dependencies 是您的jars 所依赖并存在于wildfly\modules\system\layers\base 文件夹中的所有jars。
2) 然后在您的项目中在WEB-INF 文件夹中添加一个名为jboss-deployment-structure.xml 的文件,其内容如下:
<?xml version="1.0"?>
<jboss-deployment-structure xmlns="urn:jboss:deployment-structure:1.2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<deployment>
<dependencies>
<module name="com.abcProject" >
<imports>
<include path="META-INF**"/>
<include path="org**"/>
</imports>
</module>
</dependencies>
</deployment>
3) 现在将dependencies 中的dependencies 设置为provided,您已将jars 放在abcProject/main 文件夹中。
现在运行您的项目,它将从服务器获取所有jars,并且在编译期间不会包含在war 文件中。
【讨论】:
要将外部 jars 添加为 Jboss/Wildfly 中的“库”,您可以将其定义为安装中的模块,或将其添加到现有模块中。
有关如何在 Wildfly 中添加模块的更多详细信息,请参阅link。
【讨论】: