Maven最佳实践-distributionManagement

本文介绍如何使用Maven将项目构件部署到远程仓库,并详细解释了POM文件中配置distributionManagement的方法。此外,还讲解了Maven项目的多模块结构,包括父模块与子模块的概念及其配置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

[size=medium][color=red][b]分发构件至远程仓库[/b][/color][/size]
mvn install 会将项目生成的构件安装到本地Maven仓库,mvn deploy 用来将项目生成的构件分发到远程Maven仓库。本地Maven仓库的构件只能供当前用户使用,在分发到远程Maven仓库之后,所有能访问该仓库的用户都能使用你的构件。
我们需要配置POM的distributionManagement来指定Maven分发构件的位置,如下:

<settings>    
...
<servers>
<server>
<id>nexus-releases</id>
<username>admin</username>
<password>admin123</password>
</server>
<server>
<id>nexus-snapshots</id>
<username>admin</username>
<password>admin123</password>
</server>
</servers>
...
</settings>


需要注意的是,settings.xml中server元素下id的值必须与POM中repository或snapshotRepository下id的值完全一致。将认证信息放到settings下而非POM中,是因为POM往往是它人可见的,而settings.xml是本地的。

小结
本文介绍了Maven仓库,它是什么?本地仓库,远程仓库,中央仓库具体是指什么?并介绍了如何在POM中配置项目层次的仓库,在settings中配置用户层次的仓库,以及mirror。本文还介绍了如何安装构件到本地仓库,如何分发构件至仓库。


转载于:http://tianya23.blog.51cto.com/1081650/292205/


[size=large][color=red][b]Maven的pom.xml文件结构之基本配置packaging和多模块聚合结构[/b][/color][/size]
1. packaging

packaging给出了项目的打包类型,即作为项目的发布形式,其可能的类型。在Maven 3中,其可用的打包类型如下:

jar(默认类型)、war、ejb、ear、rar、par、pom、maven-plugin、2.multi-modules

Maven 3支持Maven项目的多模块(multi-modules)结构。这样的Maven项目也被称为聚合项目,通常由一个父模块和若干个子模块构成。

其中,[size=medium][color=violet][b]父模块必须以pom打包类型,同时以<modules>给出所有的子模块[/b][/color][/size]。父模块的POM示例如下:
...  
<packaging>pom</packaging>

<modules>
<module>my-frontend-project</module>
<module>my-service-project</module>
<module>my-backend-project</module>
</modules>
...

其中的每个module,都是另外一个Maven项目
[url]http://blog.youkuaiyun.com/taiyangdao/article/details/52357132[/url]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值