web-dev-qa-db-ja.com

WildFly10でのデプロイメントとしてjarを追加する

weblogicサーバーで実行できるように、jarをWildFly 10でライブラリ/デプロイメントとしてデプロイする方法はありますか? OR jarをサーバーの任意のフォルダーに配置し、それらの依存関係をprovidedとして定義できますか?

6
MDaniyal

Warファイルの一部を作成するのではなく、jarsをWildFly 10サーバーにデプロイする方法を取得したものを以下に定義します。

1)すべてのjarファイルを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>

ここで、resourcesabcProject/mainフォルダに存在するすべてのjarsであり、dependenciesはあなたのjarsが依存しているすべてのjarsです。 wildfly\modules\system\layers\baseフォルダーに存在します。

2)次に、プロジェクトでjboss-deployment-structure.xmlという名前のファイルをWEB-INFフォルダーに次の内容で追加します。

<?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)次に、scopeファイル内のすべてのdependenciespomを、providedabcProject/mainフォルダーに配置したjarsとして設定します。

これでプロジェクトが実行され、サーバーからすべてのjarが取得され、コンパイル時にwarファイルに含まれなくなります。

6
MDaniyal

Jboss/Wildflyで外部jarを「ライブラリ」として追加するには、インストールでモジュールとして定義するか、既存のモジュールに追加します。

Wildflyにモジュールを追加する方法の詳細については、これを参照してください link

2
Leo G.