代码之家  ›  专栏  ›  技术社区  ›  Johan

如何解决“找不到发布的凭据(您的意思是`lein-deploy-clojars`?)”?

  •  2
  • Johan  · 技术社区  · 8 年前

    我正在尝试使用Leiningen将(非快照)库部署到Clojars。我以前实际上已经能够部署这个库了,但那是一段时间以前的事了,现在我已经做了一些我想发布的修复。我甚至有一个小的bash脚本,用于处理发布和部署过程,基本上只需:

    RELEASE_VERSION=${releaseVersion} lein release
    

    哪里 releaseVersion 作为参数提供给脚本。我正在使用 lein-release 插件和我指定的:

    :lein-release {:deploy-via :clojars}
    

    在我的 project.clj 。我还拥有工作(或至少他们曾经工作过)的GPG证书 /Users/johan/.lein/credentials.clj.gpg .

    运行时 lein release 系统提示我输入GPG密码,但几秒钟后,我发现:

    $ RELEASE_VERSION=0.2.1 lein release
    Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF-8
    On branch master
    Your branch is up-to-date with 'origin/master'.
    nothing to commit, working directory clean
    [master cf4e5d1] Version 0.2.1
     1 file changed, 1 insertion(+), 1 deletion(-)
    
    You need a passphrase to unlock the secret key for
    user: "Johan <email>"
    2048-bit RSA key, ID ABC123431, created 2015-11-12
    
    No credentials found for releases (did you mean `lein deploy clojars`?)
    Password prompts are not supported when ran after other (potentially)
    interactive tasks.
    See `lein help deploy` for an explanation of how to specify credentials.
    

    repositories 在我的 项目.clj :

    :repositories [["releases" {:url "http://clojars.org/repo" :creds :gpg}]]
    

    但这没有任何区别。有人知道如何解决这个问题吗?

    1 回复  |  直到 8 年前
        1
  •  2
  •   Johan    8 年前

    问题是我不小心移除了 [lein-release "1.0.9"] 从…起 {:user {:plugins .. }} 在我的 ~/.lein/profiles.clj 文件当我再次添加它时,一切都如我所料。