2015-01-14 6 views
6

Ich habe ein gradle Projekt erstellt und alles baut in Ordnung, aber wenn ich versuche, meine Maven-Repository zu laden, erhalte ich die folgenden Gradle Fehler:Gradle uploadArchives Aufgabe nicht mehr geheim lesen Schlüssel

FAILURE: Build failed with an exception. 

* What went wrong: 
Could not evaluate onlyIf predicate for task ':library:signArchives'. 
> Unable to read secret key from file: C:\Users\ideal\pubring.gpg (it may not be a PGP secret key ring) 

ich gefolgt Anweisungen at Sonatype, um den Schlüssel zu generieren, und kopierte ihn dann von seinem generierten Speicherort an den oben aufgeführten Speicherort. Ich habe auch den öffentlichen Schlüssel zum MIT-Schlüssel-Repository veröffentlicht. Die gradle.properties Datei in meinem Benutzerverzeichnis enthält die folgenden Einträge zu dem Schlüsselbund bezogen werden:

signing.keyId=MY_KEY_ID 
signing.password=MY_KEY_PASSWORD 
signing.secretKeyRingFile=C:\\Users\\ideal\\pubring.gpg 

Dieses auf einer Windows-Plattform ist. Ich habe versucht, nach der Fehlermeldung zu suchen, aber die einzige Sache, die kommt, sind die Quelldateien für die in Verbindung stehenden plugins.

Antwort

10

Das Problem ist, dass Sie den öffentlichen Schlüssel verwenden, wechseln Sie zum geheimen Schlüssel, normalerweise "secring.gpg" genannt. Also in Ihrem Fall es in

C:\Users\ideal\secring.gpg

+0

Ja, das war's, danke. – Jared

18

Die secring.gpg Datei hat removed in GPG 2.1 gewesen platziert sollte.

jedoch GPG kann immer noch schaffen, eine solche Datei: gpg --export-secret-keys -o secring.gpg

Pro Tipp: Wenn Gradle der signing plugin beschwert sich, dass Ihr Schlüssel in signing.keyId=MY_KEY_ID zu lang ist, werden Sie sicherlich die 40 Zeichen Fingerabdruck sondern werden gebeten, die 8 Zeichen ID. Sie haben dann zwei Möglichkeiten bekommen:

  1. Sie können configure GPG die 8 Zeichen ID anstelle des Fingerabdrucks zu zeigen, indem sie die keyid-format Option einstellen.

    • definieren Explizit diese Option auf CLI: (! Dank tjheslin1) gpg --list-keys --keyid-format short
    • Machen Sie diese Option implizit aktiv durch die options file (default "~/.gnupg/gpg.conf").
  2. Versuchen Sie die letzten 8 Ziffern Ihres Fingerabdrucks mit 40 Zeichen. Dies ist für den faulen Entwickler ;-)

+3

Vielen Dank dafür! Lange gerungen, aber endlich mit deiner Hilfe vorangekommen. Mein Problem war die Schlüssellänge. Ich habe 'gpg2 --list-keys --keyid-format short' ausgeführt. – tjheslin1

+0

Danke @ tjheslin1! Ich habe gerade deine Eingabe hinzugefügt :-) –

+0

Danke @PeterWippermann! Es hat wirklich geholfen! – gaurav414u