教你一步一步搭建自己的maven私服
一、 应用场景
有些公司都不提供外网给项目组人员,因此就不能使用maven访问远程的仓库地址,所以很有必要在局域网里找一台有外网权限的机器,搭建nexus私服,然后开发人员连到这台私服上,这样的话就可以通过这台搭建了nexus私服的电脑访问maven的远程仓库。
如果某个IP地址恶意的下载*仓库内容,例如全公司100台机器使用同一个IP反复下载,这个IP(甚至是IP段)会进入黑名单,因此稍有规模的使用Maven时,应该用Nexus架设私服。总归主要是两点:
1、自己maven私服更容易维护,公司开发从maven私服迁出jar到本地仓库更快
2、有些公司未开放外网给开发人员
一、下载nexus
地址:https://sonatype-download.global.ssl.fastly.net/nexus/oss/nexus-2.14.2-01-bundle.zip
二、启动服务
解压nexus-2.14.2-01-bundle.zip
在bin/jsw下有不同的版本,这里我选择window 64位操作系统的版本。
console-nexus.bat 是以命令窗口的形式启动,关闭后服务停止
install-nexus.bat 是设置开机启动,在服务中可以看成到该服务为开机自动启动(推荐使用这种方式启动)
stop-nexus.bat 是停止服务
uninstall-nexus.bat 是卸载nexus
三、服务配置
启动后输入:http://localhost:8081/nexus 进入在右上角Login登录,初始用户名:admin 密码:admin123 确定你的8081端口没有被占用
1.配置参数,将Download Remote Indexes 设置为true
2、添加第三方jar包
2.1、选择和填写参数(groupId、artifactId、version)都要填写
2.2、选择上传的jar包
3.坑来了 如果你不想每个jar包都手动上传 添加到maven私服的话 这一步必做
四、项目调用方法
1、配置maven的settings.xml文件
1.1、设置jar包保存的本地目录
1.2、设置你搭建的私服地址 注意要在节点mirrors里边
<mirror>
<id>central</id>
<mirrorOf>*</mirrorOf> <!-- * 表示让所有仓库使用该镜像-->
<name>central-mirror</name>
<url>http://192.168.1.73:8081/nexus/content/groups/public/</url>
</mirror>
maven私服到这就搭建完成了 但是私服上的jar需要你一个一个手动添加 如果想自动将jar包和项目包发布到maven私服上 请继续往下看
五、配置maven setting
1.在setting.xml文件中增加用户名和密码配置(特别注意这里的ID、要在server节点中)
<servers>
<!-- 用于发布正式版本 -->
<server>
<id>maven-repository-releases</id>
<username>admin</username>
<password>admin123</password>
</server>
<!-- 用于发布快照版本 -->
<server>
<id>maven-repository-snapshots</id>
<username>admin</username>
<password>admin123</password>
</server>
</servers>
六、配置项目的pom.xml
1.注意要在 project节点中 注意这里有坑:上图setting.xml中server节点的id是什么 下图pom.xml中repository节点中的id就是什么
<distributionManagement>
<repository>
<!-- 这里的ID要和setting的id一致 -->
<id>maven-repository-releases</id>
<url>http://127.0.0.1:8081/nexus/content/repositories/thirdparty/</url>
</repository>
<!--这是打成快照版本的配置,如果不用这个snapshotRepository标签,打包失败,会报权限问题 -->
<snapshotRepository>
<id>maven-repository-snapshots</id>
<url>http://127.0.0.1:8081/nexus/content/repositories/thirdparty</url>
</snapshotRepository>
</distributionManagement>
七、将项目发布到maven私服上
1.右键项目 run as → maven build 输入deploy → run
可以看到 项目已经发布到我们搭建的maven中了。OK结束 如有问题欢迎评论或私信!