我是靠谱客的博主 高贵小土豆,最近开发中收集的这篇文章主要介绍Maven配置中repositories、distributionManagement、pluginRepositories详解,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

1. repositorie 结构说明
repositorie 表示下载项目依赖库文件的maven仓库地址

<repositories>
<repository>
<!-- 仓库ID -->
<id>nexus</id>
<!-- 仓库名称 -->
<name>Nexus</name>
<!-- 仓库地址 -->
<url>http://192.168.1.x:xxxx/repository/maven-public/</url>
<!-- 仓库中版本为releases的构件 -->
<releases>
<!-- 是否支持更新-->
<enabled>true</enabled>
<!-- 构件更新的策略,可选值有daily, always, never, interval:X(其中的X是一个数字,表示间隔的时间,单位min),默认为daily-->
<updatePolicy>always</updatePolicy>
<!-- 校验码异常的策略,可选值有ignore, fail, warn -->
<checksumPolicy>warn</checksumPolicy>
</releases>
<!-- 仓库版本为snapshots的构件-->
<snapshots>
<!-- 是否支持更新-->
<enabled>true</enabled>
<!-- 同上 -->
<updatePolicy>always</updatePolicy>
<!-- 同上 -->
<checksumPolicy>warn</checksumPolicy>
</snapshots>
</repository>
</repositories>

如果是公司本地仓库,而且需要认证才能访问,需要在本地maven的confsettings.xml文件中添加如下配置内容

<servers>
<server>
<id>nexus</id>
<username>admin</username>
<password>admin</password>
</server>
</servers>

2. distributionManagement 结构说明
distributionManagement 表示项目打包成库文件后要上传到仓库地址

<distributionManagement>
<!-- 正式版本 -->
<repository>
<uniqueVersion>false</uniqueVersion>
<!-- nexus服务器中用户名(settings.xml中<server>的id)-->
<id>releases</id>
<!-- 自定义名称 -->
<name>Releases Repository</name>
<url>http://192.168.1.x:xxxx/repository/maven-releases/</url>
<layout>default</layout>
</repository>
<!-- 快照 -->
<snapshotRepository>
<uniqueVersion>true</uniqueVersion>
<id>snapshots</id>
<name>Snapshots Repository</name>
<url>http://192.168.1.x:xxxx/repository/maven-snapshots/</url>
<layout>legacy</layout>
</snapshotRepository>
</distributionManagement>

如果是公司本地仓库,而且需要认证才能访问,也需要在本地maven的confsettings.xml文件中添加如下配置内容(< repository >节点下的< id >对应setting.xml文件中的server的id)

<servers>
<server>
<id>releases</id>
<username>admin</username>
<password>admin</password>
</server>
<server>
<id>snapshots</id>
<username>admin</username>
<password>admin</password>
</server>
</servers>

3. pluginRepositories 结构说明
pluginRepositories 表示插件的下载仓库地址,字段和用法与repositories中的repository基本一致

<pluginRepositories>
<pluginRepository>
<id>nexus</id>
<name>Nexus</name>
<url>http://192.168.1.x:xxxx/repository/maven-public/</url>
<releases>
<enabled>true</enabled>
<updatePolicy>always</updatePolicy>
<checksumPolicy>warn</checksumPolicy>
</releases>
<snapshots>
<enabled>true</enabled>
<updatePolicy>always</updatePolicy>
<checksumPolicy>warn</checksumPolicy>
</snapshots>
</pluginRepository>
</pluginRepositories>

4. 常用的maven仓库命令
上传本地仓库

mvn install:install-file
-DgroupId=com.xxx
-DartifactId=xxx-sdk
-Dversion=1.0.0
-Dpackaging=jar
-Dfile=xxx-xxx-sdk-1.0.0.jar

参数说明
mvn install:install-file
-DgroupId=上面的groupId
-DartifactId=上面的artifactId
-Dversion=上面的version
-Dpackaging=jar
-Dfile=jar包的位置

上传远程仓库

mvn -X deploy:deploy-file
-Dmaven.test.skip=true
-DgroupId=XXX.XXX
-DartifactId=XXX
-Dversion=XXX
-Dpackaging=jar
-Dfile=XXX.jar
-DpomFile=pom.xml
-Durl=http://用户名:密码@远程私服仓库地址

阿里云仓库地址
https://maven.aliyun.com/mvn/guide
maven中央仓库地址
https://repo1.maven.org/maven2/

最后

以上就是高贵小土豆为你收集整理的Maven配置中repositories、distributionManagement、pluginRepositories详解的全部内容,希望文章能够帮你解决Maven配置中repositories、distributionManagement、pluginRepositories详解所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(54)

评论列表共有 0 条评论

立即
投稿
返回
顶部