Is there a way, we can deploy jars as a library/deployment in WildFly 10
like we can do it in weblogic
server?. OR can we place the jars in any folder of server and define those dependencies as provided
?
What I got the way to deploy jar
s on WildFly 10
server rather than making part of the war file is define below:
1) Put all your jars in wildfly\modules\system\layers\base\com\abcProject\main
and place a file named module.xml
with the following content:
<?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>
Where resources
are all those jars
present in your abcProject/main
folder and dependencies
are all those jars
on which your jars
are dependent and are present in wildfly\modules\system\layers\base
folders.
2) Then in your project add a file named jboss-deployment-structure.xml
in WEB-INF
folder with the following conents:
<?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) Now set scope
of all those dependencies
in your pom
files as provided
that you have placed jars
in abcProject/main
folder.
That's all now run your project it will get all jar
s from server and will not include in war
file during compilation.