Curl Nexus3-文件上载到托管的Maven存储库
我想将一些文件上传到我的Nexus OSS 3实例上新生成的托管Maven存储库中 我需要使用curl(不是maven或其他东西)进行上传 我尝试了以下语句(端口不是必需的-我有一个NginX作为反向代理) 此命令产生以下错误:Curl Nexus3-文件上载到托管的Maven存储库,curl,nexus,sonatype,Curl,Nexus,Sonatype,我想将一些文件上传到我的Nexus OSS 3实例上新生成的托管Maven存储库中 我需要使用curl(不是maven或其他东西)进行上传 我尝试了以下语句(端口不是必需的-我有一个NginX作为反向代理) 此命令产生以下错误: * Server auth using Basic with user 'user' PUT /repository/myRepository HTTP/1.1 Host: myNexusInstance.com Authorization: Basic xxxx= U
* Server auth using Basic with user 'user'
PUT /repository/myRepository HTTP/1.1
Host: myNexusInstance.com
Authorization: Basic xxxx=
User-Agent: curl/7.49.1
Accept: */*
Transfer-Encoding: chunked
Expect: 100-continue
HTTP/1.1 100 Continue
} [16380 bytes data]
HTTP/1.1 400 Invalid path for a Maven 2 repository
我尝试在谷歌上搜索,但没有找到任何解决方案(无论是在NexusOSS3.x文档中,还是在不同的论坛中)
使用以下配置值设置Nexus存储库:
- 格式:maven2
- 类型:托管
- 版本策略:发布
- 布局策略:严格
- 部署策略:允许重新部署(也测试为“禁用重新部署”)
这里怎么了?您不能使用Nexus存储库3中的服务URL。若要执行您正尝试执行的操作,请尝试以下操作:
curl-v-u admin:admin123——上传文件myArtifact.jarhttp://nexusURL:nexusPORT/repository/myRepository/com/my/group/myArtifact/1.0.0-RC1/myArtifact-1.0.0-RC1.jar
这样就行了
对于一些好的阅读,您可以查看下面的链接,该链接解释了远程存储库的布局(希望有助于解释我建议的工作原理):
否,相同的错误消息(Maven 2存储库的路径无效)。我认为--upload file调用只适用于原始存储库supdated,试一试。您是使用Nexus Repository的上下文路径,还是仅仅/?以下内容适用于Nexus 3.2.1的禁用重新部署、发布和严格布局策略
curl-v——用户用户名:密码——上传文件/path/sample.warhttp://nexus.company.com:8081/nexus/repository/myrepo/com/company/sample-app/1.0.1/sample-app-1.0.1.war
注意,我们将应用程序上下文设置为/nexus,默认情况下,在nexus 3中不存在该上下文。使用curl命令,您必须知道文件名(myArtifact-1.0.0-RC1)必须等于存储库路径的最后一部分(myArtifact/1.0.0-RC1)的连接http://nexusURL:nexusPORT/repository/myRepository/com/my/group/myArtifact/1.0.0-RC1/myArtifact-1.0.0-RC1.jar作为“变通方法”,我使用了“mvn部署:部署文件”这需要一个现有的maven安装,但可以工作。最好有一个独立于工具的上传机制。如果可以,我会使用类似Charles的工具来查看它使用的是什么端点。从那里你可以很容易地重新使用curl工具来工作。
* Server auth using Basic with user 'user'
PUT /repository/myRepository HTTP/1.1
Host: myNexusInstance.com
Authorization: Basic xxxx=
User-Agent: curl/7.49.1
Accept: */*
Transfer-Encoding: chunked
Expect: 100-continue
HTTP/1.1 100 Continue
} [16380 bytes data]
HTTP/1.1 400 Invalid path for a Maven 2 repository