安装第三方jar包到私服
# 140.安装第三方jar包到私服
之前我们都是将一个Maven项目安装到仓库中,本文我们就来讲,如何安装一个jar包。
# 安装到本地仓库
我们以FastJson为例,讲解如何安装。
假设我们有了fastjson-1.1.37.jar这个文件;然后我们可以进入到该jar包所在的文件,直接运行如下命令:
mvn install:install-file -DgroupId=com.alibaba -DartifactId=fastjson -Dversion=1.1.37 -Dpackaging=jar -Dfile=fastjson-1.1.37.jar
1
或者不进入到该jar包所在的目录,直接在命令行里指定完整的文件路径,即可:
mvn install:install-file -DgroupId=com.alibaba -DartifactId=fastjson -Dversion=1.1.37 -Dpackaging=jar -Dfile=C:\my_java\fastjson-1.1.37.jar
1
完成后,可以看到确实多了1.1.37版本的jar包:
# 安装到私服
假设我们要安装到maven-releases中,我们可以使用命令:
mvn -e -X deploy:deploy-file -DgroupId=com.alibaba -DartifactId=fastjson -Dversion=1.1.37 -Dpackaging=jar -Dfile=fastjson-1.1.37.jar -Durl=http://127.0.0.1:8081/repository/maven-releases/ -DrepositoryId=releases
1
同理,-Dfile选项是写jar所在的路径,-DrepositoryId的值则是我们在settings.xml中配置的server的id值
<server>
<id>releases</id>
<username>admin</username>
<password>123456</password>
</server>
1
2
3
4
5
2
3
4
5
我们可以登录私服,查看(Browse)仓库的内容:
可以看到是有FastJSON的
常见错误:
Return code is: 401, ReasonPhrase: Unauthorized。错误原因可能是:
- 没有配置server的账号和密码(settings.xml)
- 参数漏掉了-DrepositoryId=maibao-snapshot
Return code is: 405, ReasonPhrase: PUT。错误原因可能是:
- 上传 url 拼写错误
- 发布的私服,类型错误。应该使用hosted类型的nexus仓库
# 通过图形化界面上传
除此之外,我们还可以通过图形化界面上:
然后选择文件上传,并输入坐标信息即可
# 小结
知道如何上传一个jar包后,我们就可以通过shell脚本或者bat脚本,实现批量上传的功能,这对重构老项目到Maven来管理是很方便的。
上次更新: 2024/1/23 16:20:41