Mavenがjarを作成すると、pom.xmlがMETA-INF///pom.xmlに配置されます。これは、アーティファクトの元のpomです。変数は展開または継承されず、継承された依存関係はリストされません。これにより、本番jarの情報がビルド環境に依存するようになります。
jar内のpomはどのように構成できますか?最良の方法は、maven-jar-pluginの構成です。
親に属するすべての情報を取得したかったので、同様の要件がありましたpom.xml
。つまり、「raw」に加えて、JAR内の効果的なpomを生成pom.xml
したかったのです。
アイデアはhelp:effective-pom
、JARの生成中にプラグインとゴールを使用し、それを。と一緒に配置することpom.xml
です。これは、次の構成で行われます。
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-help-plugin</artifactId>
<version>2.1.1</version>
<executions>
<execution>
<phase>generate-resources</phase>
<goals>
<goal>effective-pom</goal>
</goals>
<configuration>
<output>${project.build.outputDirectory}/META-INF/maven/${project.groupId}/${project.artifactId}/effective-pom.xml</output>
</configuration>
</execution>
</executions>
</plugin>
(ソース)