1、登录nexus管理端
打开浏览器,输入 localhost:8081,即可进入nexus管理界面,如下:
可以发现,右上角有一个 "sign in" 的按钮,说明我们需要登录,此时的界面只是一些预览的功能,这是nexus默认给匿名用户开放的权限。
2、登录并修改密码
使用nexus的默认账号密码登录,初始化账号为:admin,密码为:admin123,进去之后点击个人信息,进行密码修改。
3、创建自己的maven库
点击左上角按钮,进入如下界面,然后点击“Repositories”,进入如下界面:
点击“Create Repositories” 按钮,进行创建maven库
可以看到有三种,关于这三种的介绍,请移步谷歌或者百*。这里我们选择第二种,创建宿主机器上的maven库。这个一般就是用来管理私有的一些jar包,不提供给第三使用的。
填写属于自己的maven库名称,注意,这个名称后面一直都会用到,所以不要取的很随意。笔者这里取名为“maven-kevin”,其他全部默认。点击创建按钮,完成创建。
这就是我们建的仓库,里面现在还是空的。
4、上传私有jar包
这里我们新建一个普通的Java项目,但是是maven管理,否则无法与maven库连接,就无法进行后面的操作。
这个是我需要进行打包的jar包,配置目标仓库地址
<!-- 配置部署的远程仓库 -->
<distributionManagement>
<snapshotRepository>
<id>maven-kevin</id>
<name>kevin snapshot repository</name>
<url>http://localhost:8081/repository/maven-kevin/</url>
</snapshotRepository>
</distributionManagement>
请注意,这里的url中的地址不是随便给的,我们可以点击仓库名称后面的“copy”按钮,即可实现复制:
一切准备就绪,在Java项目中写了两个类,然后点击idea的maven deploy,上传,结果失败!报错信息如下:
Failed to execute goal org.apache.maven.plugins:maven-deploy-plugin:2.7:deploy (default-deploy) on project utils: Failed to deploy artifacts: Could not transfer artifact com.kevin:utils:jar:1.0.0-20190316.134927-3 from/to maven-kevin (http://localhost:8081/repository/maven-kevin/): Failed to transfer file: http://localhost:8081/repository/maven-kevin/com/kevin/utils/1.0.0-SNAPSHOT/utils-1.0.0-20190316.134927-3.jar. Return code is: 401, ReasonPhrase: Unauthorized. -> [Help 1]
“Return code is: 401, ReasonPhrase: Unauthorized.” 告诉我们,没有认证通过。
对呀,我们的maven仓库都是通过admin超级管理员进行配置的,怎么可能什么都不配置就可以上传自己的私有jar包?那还怎么保持环境的干净整洁?那么,问题来了,怎么能配置认证呢?
打开maven 的sttings 文件,
找到如上图标记的内容,这里就是需要配置的账号和密码,修改对应的为自己maven登录账号密码,再次进行deploy,
控制台打印信息如上,成功了!!!
我们到nexus的管理界面,找到对应的文件夹,如下图
可以看到,已经生成了我们刚刚打包上传的jar 信息,现在,你就可以在其他项目引用这个jar包了,是不是特别简单?
当然,涉及到一些高级应用,比如什么仓库组、公共仓库等等的,后面熟悉了再配置吧!
一点一滴,慢慢积累,终有一天,你是大神。