カスタムアーティファクトを作成する必要がある場合は、maven-assembly-plugin
を使用する必要があります。アセンブリの使用を開始するには、Mavenの本Chapter 8. Maven Assembliesを読んでおくことを強くお勧めします。この章では、Mavenアセンブリの作成について詳細に説明します。読みやすいです。
基本的に、アセンブリはassembly descriptorの助けを借りて作成されます。次のアセンブリ記述子には、プロジェクトメインアーティファクトがzipアーカイブのルートに含まれます。あなたは、その後、あなたは自分のPOMにこのプラグインを宣言する必要があり
<assembly
xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2 http://maven.apache.org/xsd/assembly-1.1.2.xsd">
<id>assemby-id</id>
<formats>
<format>zip</format>
</formats>
<includeBaseDirectory>false</includeBaseDirectory>
<files>
<file>
<source>${project.build.directory}/${project.build.finalName}.${project.packaging}</source>
<outputDirectory>/</outputDirectory>
</file>
</files>
</assembly>
(ロジックは同じである)あなたのアーカイブにカスタムファイルを追加するには、ここより
<file>
または
<fileSets>
宣言を追加することができます。この場合、プラグインは
package
フェーズにバインドされ、上記の記述子で構成されます。デフォルトでは、アセンブリIDはアーカイブの名前に追加されます。ここでそれを削除しました。
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.5.5</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
<configuration>
<descriptors>
<descriptor>assembly.xml</descriptor> <!-- path to the descriptor -->
</descriptors>
<appendAssemblyId>false</appendAssemblyId>
</configuration>
</execution>
</executions>
</plugin>
mvn clean package
を実行している場合、あなたはzipアーカイブはtarget
ディレクトリに作成されていますことがわかります。
溶液中でそれらを持っているのはよくないですので、SRC /メイン/リソースにB.TXT、C.txt、D.batを追加などのmaven-アセンブリのプラグインではありません(http://stackoverflow.com/questions/5717183/create-a-zip-with-all-dependencies-with-maven)への回答に記載されています。あなたがしなければならないことは、pom.xmlにmaven-assembly-pluginを組み込み、src/main/assembleにカスタマイズされたassembly.xmlを作成することです。一般に、assembly.xmlのファイルセットは、作成されたアーカイブに何が含まれるかを定義します。mvn clean installを呼び出した後、新しいzipアーカイブがあなたのプロジェクトのターゲットフォルダで利用できるようになります。うまくいくと助かります... –
アセンブリ記述子のデフォルトの場所は 'src/assembly'です。https://maven.apache.org/guides/introduction/introduction-to-the-standard-directory-layoutを参照してください。 html – khmarbaise