lein deploy에서 가방에 서명할 수 없습니다. 존재하지 않는 키를 인용했습니다.

3994 단어 leiningen

묘사

clojars에 배치하려고 시도할 때 리닌은 제 가방에 서명하지 못했습니다.
You need a passphrase to unlock the secret key for
user: "Christian Johansen <[email protected]>"
2048-bit RSA key, ID FCFF5050, created 2014-03-17

Could not sign /Users/christian/projects/hiccup-find/target/hiccup-find-0.1.0.jar
gpg: error checking usability status of 07D6ED28
gpg: key 07D6ED28: secret key without public key - skipped
FCFF5050은 올바른 키이며 ~/.lein/profiles.clj에서 설정한 키입니다.나는 07D6ED28이 무엇인지 모르겠다. gpg --list-keys 또는 ~/.lein 어느 곳에서도 인용되지 않았고, 내가 배치하려고 했던 프로젝트에서 생성된 모든 파일을 삭제했다.내 clojars의 GPG 키.조직 파일(cjohansen)은 gpg --export -a FCFF5050에 의해 생성된다.
레닌겐은 열쇠를 어디에다 숨길까?나는 이전에 다른 (비기능성) gpg 설정을 가지고 있었다.내가 뭘 잘못했나?

토론 #1

명령줄에 gpg 서명을 사용할 수 있습니까?
해봐gpg -ab somefile.
달리기gpg --list-keys도 깨우침을 줄 수 있다.

토론 #2

gpg -ab file 서명하면 벌금을 부과할 수 있다.--list-keys 내 유일한 열쇠를 열거했다.나는 심지어 ~/까지 삭제했다.gnupg에서 이 문제를 발표하기 전에 이전 키를 정확하게 지웠는지 확인하십시오.Leiningen이나gnupg에 중간 파일을 저장할 수 있는 다른 곳이 있습니까?OSX에 있습니다.

토론 #셋

이걸 당신의 project.clj 파일에 넣고 모든 물건에 추적을 추가할 수 있습니까?
(alter-var-root #'clojure.java.shell/shell
                (fn [sh & args]
                  (prn :shell args)
                  (apply sh args)))
만약 우리가 왜라고 불리는지 정확하게 확정할 수 있다면, 그것은 반드시 근본적인 원인을 가리켜야 한다.

토론 #4

나는 지금 매우 불편하지만, 나는 알았다.
Unable to resolve var: clojure.java.shell/shell in this context
복구할 수 없을 것 같습니다:/

토론 #5

clojure를 얻기 위해 (require 'clojure.java.shell)를 추가할 수 있을 것 같습니다.자바.케이스 올바르게 로드(?)

토론 #6

나도 알아맞혔지만 소용없어:

토론 #7

내 잘못;이렇게 해야 합니다.
(alter-var-root (resolve 'clojure.java.shell/sh)
                (fn [sh]
                  (fn [& args]
                    (prn :shell args)
                    (apply sh args))))

토론 #8

:shell ("gpg" "--yes" "-ab" "--" "/Users/christian/projects/hiccup-find/target/hiccup-find-0.2.0.jar")

You need a passphrase to unlock the secret key for
user: "Christian Johansen <[email protected]>"
2048-bit RSA key, ID FCFF5050, created 2014-03-17

Could not sign /Users/christian/projects/hiccup-find/target/hiccup-find-0.2.0.jar
gpg: error checking usability status of 07D6ED28
gpg: key 07D6ED28: secret key without public key - skipped
흥미로운 점:
gpg --yes -ab -- /Users/christian/projects/hiccup-find/target/hiccup-find-0.2.0.jar
gpg: error checking usability status of 07D6ED28
gpg: key 07D6ED28: secret key without public key - skipped

You need a passphrase to unlock the secret key for
user: "Christian Johansen <[email protected]>"
2048-bit RSA key, ID FCFF5050, created 2014-03-17
그래서 이것은 gpg에서 온 것이다.그러나 이것은 경고일 뿐이다.프로세스는 파일에 서명하지만 상태 2로 종료됩니다.탈퇴 상태 2는 --yes는 피해야 하는 것으로 알고 있다.나는 그것이 어떻게 오류를 되돌릴 수 있을 뿐만 아니라, 파일에 서명할 수 있는지 확실하지 않다.
이 행동으로 인해 현재 설정이 lein deploy gpg의 종료 상태로 인해 실패한 것 같습니다. 파일이 서명되었음에도 불구하고 (lein 프로세스를 통해)
겸사겸사 한마디 하자면, 당신의 도움과 인내심에 감사 드립니다.

토론 #9

알겠습니다.그럼 이것은 gpg 중의 버그인 것 같은데?사용할 수 있는 해결 방법은 소형 셸 스크립트 패키지 gpg 를 작성하는 것입니다. 근본적인 원인을 복구할 수 없다고 가정하면 어떤 상황이 발생하든지 간에 성공적인 오류 코드로 종료됩니다.나는 이 일을 끝내야 한다. 왜냐하면 이것은 레닌건의 문제가 아닌 것 같기 때문이다.

토론 #10

디렉터리를 다시 삭제하고 새 키를 만들려고 합니다. 보세요!그것은 지금 작용했다.나는 내가 이전에 .gnupg 바이너리 파일로만 키를 삭제했을 뿐이라고 의심했다. 나는 왠지 개인 키를 남겼지만 gpg 표시하지 않았다.
어쨌든, 그것은 지금 작용했다. 나는 매우 유용한 것을 배웠다--list-keys. 그래서 나는 이전보다 많이 좋아졌다. 매우 기쁘다:) 당신의 도움에 매우 감사합니다!

좋은 웹페이지 즐겨찾기