ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

java – Maven包有效pom

2019-05-28 04:48:10  阅读:266  来源: 互联网

标签:java maven pom-xml parent-pom


我有一个包含许多子模块的Maven项目.其中一些子模块打包为jar,部署到Nexus Maven存储库.

我遇到的问题是打包的jar引用了不必部署的父pom.

有没有办法让Maven部署有效的pom而不是pom.xml?

解决方法:

您需要完全了解您想要做的事情的后果:the effective POM还将包含您当前的设置(settings.xml的内容),从而可能公开暴露您在那里硬编码的任何密码.更好的解决方案就是部署父POM.

但是,如果您真的想沿着这条路走下去,可以进行以下配置:

<plugin>
    <artifactId>maven-jar-plugin</artifactId>
    <version>2.4</version>
    <configuration>
        <archive>
            <addMavenDescriptor>false</addMavenDescriptor>
        </archive>
    </configuration>
</plugin>
<plugin>
    <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}/pom.xml</output>
            </configuration>
        </execution>
    </executions>
</plugin>

这告诉maven-jar-plugin不要将Maven descriptor pom.xml和pom.properties添加到jar中.相反,pom.xml是由maven-help-plugin及其effective-pom目标生成的.

如果您还需要pom.properties文件,则需要使用maven-antrun-plugin手动创建它.

标签:java,maven,pom-xml,parent-pom
来源: https://codeday.me/bug/20190528/1168730.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有