如何控制maven构建的jar里面的pom.xml?

时间:2010-12-14 09:40:26

标签: maven-2 maven maven-3

当maven构建一个jar时,它会将一个pom.xml放在META-INF /// pom.xml中。 这是神器的原始pom。 没有扩展或继承变量,也没有列出继承的依赖项。 这使得生产jar的信息依赖于构建环境。

如何配置jar内的pom? 最好的是maven-jar-plugin的一些配置。

1 个答案:

答案 0 :(得分:7)

我有类似的要求,因为我想获取属于父pom.xml的所有信息。换句话说,除了“原始”pom.xml之外,我希望在生成的JAR中包含有效pom

我们的想法是在生成JAR期间使用help:effective-pom插件和目标,并将其与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>

source