Deployment 使用Leiningen推送到Nexus

Deployment 使用Leiningen推送到Nexus,deployment,clojure,nexus,leiningen,Deployment,Clojure,Nexus,Leiningen,我使用Leiningen编写了一个Clojure项目,现在想将结果jar添加到Sonatype Nexus服务器。我安装了lein clojars,因为它附带了一个push命令,如果您想在clojars之外的某个地方推送,它似乎接受一个可选的repoarg。但是,每当我尝试此操作时,都会得到一个JSchException:Auth fail。这似乎表明某个地方存在身份验证问题 我能够将jar scp到Nexus,并且我还能够将同样的settings.xml与Maven一起用于上传到这台机器上,所

我使用Leiningen编写了一个Clojure项目,现在想将结果jar添加到Sonatype Nexus服务器。我安装了lein clojars,因为它附带了一个
push
命令,如果您想在clojars之外的某个地方推送,它似乎接受一个可选的
repo
arg。但是,每当我尝试此操作时,都会得到一个
JSchException:Auth fail
。这似乎表明某个地方存在身份验证问题

我能够将jar scp到Nexus,并且我还能够将同样的settings.xml与Maven一起用于上传到这台机器上,所以我非常确信这两个都是正确的


使用Leiningen推送到其他存储库有什么好方法吗?还是说它真的只为Clojars设计?

不久前,在Leiningen Google group上发生了一次相关的电子邮件交换;请参见Phil Hagelberg的答案

简而言之,在JVM上使用DSA密钥显然是不可能的。我不确定Maven是否/如何找到解决这个问题的方法,但无论如何,
LeinClojars
没有。因此,您应该坚持使用
scp


(顺便说一句,这也意味着,
lein clojars
也不被推荐用于处理clojars。此外,我很确定我遗漏了部分内容,因为它显然曾经用于处理clojars。我很确定的一点是,Leiningen在推动受保护的回购方面目前帮不了什么忙我在上面所链接的信息与权威性的解释非常接近,解释了为什么会出现这种情况。)

如果你要推进到一个真正的Maven存储库,你可能最好使用Maven进行部署。有一个很好的Clojure插件:

记录在案,Leiningen 1.5现在有一个部署任务,可以通过https推送到Nexus和Archiva等Maven存储库:

很有趣。我可以发誓我用lein clojars推送到clojars,但我aybe我确实使用了scp。不过,谢谢你的回答;我几乎不可能在网上找到关于这方面的信息。是的,我当时的印象是,人们实际上自己也能使用lein clojars,但现在似乎不受支持,正如Phil所说,使用scp很容易……另一种方法是让hudson投票给你SCM和自动部署到自己的mvn repo。这样,您就可以免费获得自动测试。我希望很快记录这个过程;这并不太棘手,而且拥有一台hudson服务器非常方便。@technomancy:哦,太好了!我本来打算调查hudson的。我想我会等一段时间,然后跟进您的文章。:-)也许不久不是合适的词。。。可能需要一段时间我不认为靠你自己去弄清楚这件事太难了。