搭建Nexus(墙裂推荐)
搭建Nexus(墙裂推荐)
这边墙裂推荐看文档的同学,搭建自己的maven私服.
- 在企业里面,每家企业都自己搭建maven私服.
- maven的settings内部,本身的mirrors,虽然可以配置多个mirror,但是每次编译都只有一个mirror生效,而搭建私服可以直接从多个源下载,不受影响.
搭建私服
搭建过程,请自行百度,这边不做介绍.
nexus的设置
创建一个类型为proxy的仓库,地址指向阿里云的公开仓库,https://maven.aliyun.com/nexus/content/groups/public/

创建一个类型为proxy的仓库,地址指向9istock的公开仓库,http://nexus.9istock.com/repository/maven-public/
在本地public仓库中,开放新创建的阿里云仓库和9istock的仓库

如果需要上传本地jar包,请在创建一个类型为host的仓库, 常见的nexus都已经创建好了release和snapshot的repostiry,仔细观察2份repository的配置,安全性是不一样的.
本地maven配置
- 在settings文件中,配置mirror为nexus的public的地址
<mirror>
<id>nexus</id>
<mirrorOf>central</mirrorOf>
<name>nexus maven</name>
<url>http://nexus public url/</url>
</mirror>使用命令行,进入代码目录(包含最外层pom.xml文件的目录)

敲入命令mvn clean package
- 最终出现Build Success字样,为编译打包成功,否则请检查上述maven配置

上传配置
settings.xml中,需要修改server
<server>
<id>deploymentRepo</id>
<username>用户名</username>
<password>密码</password>
</server>
<server>这边id是在具体项目里面由pom.xml指定的
<distributionManagement>
<repository>
<id>deploymentRepo</id>
<url>nexus上release的repository的URL</url>
</repository>
<snapshotRepository>
<id>snapshots</id>
<url>nexus上的snapshot的repository的URL</url>
</snapshotRepository>
</distributionManagement>上述2份配置,是通过id匹配的,在应用代码中指定的distributionManagement,指代在运行mvn deploy命令的时候,jar包上传的地址,如果应用代码中的version使用SNAPSHOT结尾,会使用snapRepository,否则使用repository上传jar包
上传的nexus,一般会设置安全密码,密码就在settings文件中的server中进行配置,使用id进行匹配.
使用命令行(不要使用powerShell),进入base/common-api的代码目录,键入命令mvn deploy -Dmaven.test.skip,看到最后success,就说明上传成功,最后到nexus上查看对应的包.
