手动上传SNAPSHOT文件到Maven私服Nexus的方法

2020-12-17 14:33

阅读:779

公司用Nexus搭建的Maven私服,之前一直用代理方式链接兄弟公司的Maven私服,来使用他们的研发成果。最近他们出于安全考虑禁止了外部访问,改为直接把jar包发送给我们,而我们需要把jar包手动上传到我们的私服上供开发团队使用。
问题来了:他们提供的jar是SNAPSHOT版本,Nexus私服的Release仓库不允许上传SNAPSHOT版本,会报错,而SNAPSHOT仓库压根就不提供Web界面上传功能。
经过调查,找到的办法是通过Maven命令行直接上传文件。

命令行的完整写法如下:

mvn deploy:deploy-file -DgroupId=com.youcompany -DartifactId=your-artifactID -Dversion=1.0.0-SNAPSHOT -Dpackaging=jar -Dfile=F:\jar\your-jar-1.0.1-SNAPSHOT.jar -Durl=https://yourcompany.com/nexus/content/repositories/snapshots/ -DrepositoryId=snapshots

前面几个参数显而易见不解释,最后两个参数简单说一下:
url: 在nexus上的目标SNAPSHOT仓库的URL地址。
repositoryId: 在maven本地settings.xml中,与上述URL对应的节点中配置的id。

比如,如果settings.xml配置的是:

server>
    id>releasesid>
    username>adminusername>
    password>123password>
server>
server>
  id>snapshotsid>
  username>adminusername>
  password>123password>
server>  

那么要上传SNAPSHOT包的话,repositoryId就应该是snapshots

参数都确定后,就去命令行执行吧,一切顺利的话,上传成功后,在Web界面应该就能搜索到了。


评论


亲,登录后才可以留言!