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

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

公司用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>releases</id>
    <username>admin</username>
    <password>123</password>
</server>
<server>
  <id>snapshots</id>
  <username>admin</username>
  <password>123</password>
</server>  

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

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

原文地址1:https://www.cnblogs.com/phyger/p/14029759.html

文章2:Maven手动上传snapshot版本的jar包到maven私服Nexus3

环境:
操作系统:win10
nexus:Sonatype Nexus Repository ManagerOSS 3.29.1-01
maven:3.5.2
jdk:1.8

前言
项目没规范,维护两行泪。最近用了很多年的nexus挂了,运维新搭了个空nexus。一个用了10多年的老产品,其中一个打包版本中引用了SNAPSHOT快照jar。nexus3 web端不提供直接上传快照的页面。

以下是用maven命令行上传snapshot版本jar包到nexus步骤
1、准备好maven环境:下载maven安装包,解压后配置好path环境变量。具体配置请参考百度
2、配置maven的settings.xml
在maven安装目录找到conf/settings.xml

 <!-- 在settings标签下配置以下内容-->
  <servers>
    <server>
      <!--repositoryId,上传SNAPSHOT jar时需要指定此id -->
      <id>nexus-snapshot</id>
      <!--nexus 账号密码  -->
      <username>admin</username>
      <password>admin123</password>
    </server>
  </servers>

3、用管理员权限打开cmd命令窗口,cd到在第三方jar包所在目录下,输入以下命令:

mvn deploy:deploy-file -DgroupId=com.aaa -DartifactId=bbb -Dversion=0.0.1-SNAPSHOT -Dpackaging=jar -Dfile=bbb-0.0.1-SNAPSHOT.jar -Durl=http://192.168.1.189:8081/repository/maven-snapshots/ -DrepositoryId=nexus-snapshot

部分命令参数简介:
-DgroupId=com.aaa ##com.aaa为要上传的jar包groupId
-Dversion=0.0.1-SNAPSHOT ##0.0.1-SNAPSHOT为要上传的jar包版本号
-Dfile=bbb-0.0.1-SNAPSHOT.jar ##bbb-0.0.1-SNAPSHOT.jar为要上传的jar包名称
-Durl=http://192.168.1.189:8081/repository/maven-snapshots/ ##此路径是要上传到nexus上maven-snapshots仓库的仓库路径,可在nexus web浏览仓库页面,点击copy URL的按钮获取到
-DrepositoryId=nexus-snapshot ##nexus-snapshot 为我们第2步配置的本地maven conf/settings.xml文件中其中一个server的id,nexus上传jar需要用这种方式验证账号密码

4、检查nexus的maven-snapshots仓库jar是否已上传成功

5、常见错误:
[ERROR] The goal you specified requires a project to execute but there is no POM in this directory...
解决方案:cmd命令必须用管理员权限打开,如果打开的是powershell,请输入cmd命令切换到cmd下执行

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-deploy-plugin:2.7:deploy-file (default-cli) on project standalone-pom: Cannot deploy artifact from the local repository
解决方案:不能在本地maven仓库中直接运行上传命令,jar包需要挪动.m2/repository目录外上传
————————————————
版权声明:本文为CSDN博主「hhf..」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/haohaifeng002/article/details/112471759

原文地址2:https://blog.csdn.net/haohaifeng002/article/details/112471759

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要将spring-boot-starter-parent 2.7.15-SNAPSHOT版本传到Nexus中,你可以按照以下步骤进行操作: 1. 确认你的Maven项目中的pom.xml文件中是否配置了Nexus仓库的地址。你可以在pom.xml中添加以下代码来配置Nexus仓库: ```xml <repositories> <repository> <id>nexus-aliyun</id> <name>Nexus aliyun</name> <url>http://maven.aliyun.com/nexus/content/groups/public</url> </repository> </repositories> ``` 2. 接下来,你需要在settings.xml文件中添加一个mirror配置,将Nexus仓库作为镜像地址。在settings.xml文件的`<mirrors>`标签内添加以下代码: ```xml <mirrors> <mirror> <id>nexus-aliyun</id> <mirrorOf>central</mirrorOf> <name>Nexus aliyun</name> <url>http://maven.aliyun.com/nexus/content/groups/public</url> </mirror> </mirrors> ``` 3. 确保你的本地Maven仓库已经清理,以便重新下载依赖。你可以在命令行中使用以下命令清理本地仓库: ``` mvn dependency:purge-local-repository ``` 4. 然后,你可以执行以下命令将依赖传到Nexus中: ``` mvn deploy ``` 这样,spring-boot-starter-parent 2.7.15-SNAPSHOT版本就会被传到Nexus仓库中了。 <span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [‘org.springframework.boot:spring-boot-starter-parent’ not found](https://blog.csdn.net/qq_45171544/article/details/125975987)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值