2014-05-11 55 views
11

我已启动并运行Sonatype Nexus实例,需要编写脚本以手动下载特定的工件。如何从Sonatype Nexus使用wget下载工件

我尝试使用REST API和wget:

wget --user=username --password=password http://<ip>:<port>/nexus/service/local/artifact/maven/content?g=<group>&a=<artifact>&v=<version>&r=snapshots 

Resolving <ip stuff> 
Connecting to <ipv6 stuff>... failed: Connection refused. 
Connecting to <ipv4 stuff>... connected. 
HTTP request sent, awaiting response... 401 Unauthorized 
Reusing existing connection to <ip>:<port>. 
HTTP request sent, awaiting response... 400 Bad Request 
2014-05-11 20:17:01 ERROR 400: Bad Request. 

有谁知道,如何得到这个工作?

编辑:我可以用我的浏览器下载神器(和被记录到webinterface)

回答

20

的URL看起来是正确的,但你有,因为它包含特殊字符引用它。

wget --user=username --password=password "http://<ip>:<port>/nexus/service/local/artifact/maven/content?g=<group>&a=<artifact>&v=<version>&r=snapshots" 

你可能也想为了增加--content-disposition对下载的文件名是正确的。在这里看到更多的信息:

https://support.sonatype.com/entries/23674267

+0

是否有一个为powershell?我在ps上得到了这个,Invoke-WebRequest:找不到接受参数'--password = admin123'的位置参数。这里是命令:wget --user = admin --password = admin123“http://ec2-54-299-XX-231.us-west-2.compute.amazonaws。 com:8081/nexus/service /本地/伪像/行家/内容?克=组织&一个= FOO&v = 1.0&R =释放” – OK999