安装第三方 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/10/1 19:22:42