如何从Maom的pom.xml中删除重复的内容?

时间:2010-10-29 06:30:34

标签: maven-2

我遇到了这样的情况,当使用maven打包项目时,我既喜欢源包也喜欢二进制包,他们有相同的manifest.mf文件。然后我必须在maven-source-plugin和maven-jar-plugin的插件配置中编写相同的条目,如下所示:

        <plugins>
            <plugin>
                <artifactId>maven-source-plugin</artifactId>
                <executions>
                    <execution>
                        <id>attach-sources</id>
                        <goals>
                            <goal>jar</goal>
                        </goals>
                    </execution>
                </executions>
                <configuration>
                    <archive>
                        <manifestEntries>
                            <Artifiact>${project.name}</Artifiact>
                            <Version>${project.version}</Version>
                            <Vendor>${project.organization.name}</Vendor>
                            <Built-By>Shiva Wu</Built-By>
                        </manifestEntries>
                    </archive>
                </configuration>
            </plugin>
            <plugin>
                <artifactId>maven-jar-plugin</artifactId>
                <configuration>
                    <archive>
                        <addMavenDescriptor>false</addMavenDescriptor>
                        <manifestEntries>
                            <Artifiact>${project.name}</Artifiact>
                            <Version>${project.version}</Version>
                            <Vendor>${project.organization.name}</Vendor>
                            <Built-By>Shiva Wu</Built-By>
                        </manifestEntries>
                    </archive>
                </configuration>
            </plugin>
        </plugins> 
    


在更改设置时修改它们真的不方便。有没有更好的方法来解决这个问题?

感谢:)

1 个答案:

答案 0 :(得分:0)

没有比你正在做的更好的方法来处理它。

但还有一些额外的东西。您可以将这些配置粘贴到插件管理部分中的可重复使用的“公司”或“标准”父POM中,然后您不必再在任何其他pom中指定它们。有关详细信息,请参见此处:

Best way to share portions of a Maven pom.xml across unrelated projects?

我注意到的另一件事是,您的个人名称应该替换为应该在settings.xml文件中设置的变量。这将有助于提高构建可移植性。