6

別の JAR 依存関係の一部のコンテンツを Web アプリケーションの特定のサブフォルダーにコピーするというビルド インフラストラクチャの非常に具体的な要件があります。<dependencySet>私たちは maven-assembly-plugin を使用しています。これを行う自然な方法は、 <unpackOptions>.

私が持っているコードサンプル(アセンブリ記述子内)は次のようになります。

    <dependencySet>
        <unpack>true</unpack>
        <scope>runtime</scope>
        <useProjectArtifact>false</useProjectArtifact>
        <includes>
            <include>my.group:artifact:jar</include>
        </includes>
        <unpackOptions>
            <includes>
                <include>subfolder/config.xml</include>
            </includes>
        </unpackOptions>
        <outputDirectory>WEB-INF/otherfolder</outputDirectory>
    </dependencySet>

artifact.jar/subfolder/config.xml問題は、単一のファイルのみをターゲットにコピーすることを指定する方法がわからないことですWEB-INF/otherfolder。実際の結果はWEB-INF/otherfolder/subfolder/config.xml. ご覧のとおり/subfolder、最終パスに追加されます。追加されない<include>ように式を変更する方法はありますか?/subfolder

前もって感謝します!

4

3 に答える 3

2

アーカイブの解凍を適切にサポートするmaven-dependency-pluginについて考えたことはありますか。

于 2012-06-22T14:24:34.757 に答える
2

ソースを参照すると、これは maven-assembly プラグインでは不可能であることがわかります。アセンブリ記述子で指定されているすべてのインクルードを取得し、この情報を複数の段階で使用される Plexus アーカイバーに渡します。インクルード パターンは Plexus アーカイバにも渡され、ディレクトリ構造を維持したまま「アンパック」を実行します。

于 2012-12-10T13:08:27.507 に答える