Android Error Building Signed APK: keystore.jks nicht zum Signieren der Konfiguration 'externalOverride' gefunden

85

Ich erhalte diesen Fehler, wenn ich versuche, signierte APK zu erstellen. Ich habe kürzlich ein Upgrade auf API 23 durchgeführt, aber danach APKs erfolgreich generiert. Ich bin verwirrt. Bitten Sie um Hilfe und beraten Sie, wie Sie dieses Problem lösen können. Hier ist der Fehler

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:validateExternalOverrideSigning'.
> Keystore file /Users/me/Desktop/final apps/keystore.jks not 
found for signing config 'externalOverride'.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --  
debug option to get more log output.

Und das Protokoll

Information:Gradle tasks [:app:assembleRelease]
:app:preBuild UP-TO-DATE
:app:preReleaseBuild UP-TO-DATE
:app:checkReleaseManifest
:app:preDebugBuild UP-TO-DATE
:app:prepareComAndroidSupportAppcompatV72311Library UP-TO-DATE
:app:prepareComAndroidSupportSupportV42311Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesAppindexing810Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesBasement810Library UP-TO-DATE
:app:prepareReleaseDependencies
:app:compileReleaseAidl UP-TO-DATE
:app:compileReleaseRenderscript UP-TO-DATE
:app:generateReleaseBuildConfig UP-TO-DATE
:app:generateReleaseAssets UP-TO-DATE
:app:mergeReleaseAssets UP-TO-DATE
:app:generateReleaseResValues UP-TO-DATE
:app:generateReleaseResources UP-TO-DATE
:app:mergeReleaseResources UP-TO-DATE
:app:processReleaseManifest UP-TO-DATE
:app:processReleaseResources UP-TO-DATE
:app:generateReleaseSources UP-TO-DATE
:app:compileReleaseJavaWithJavac
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
:app:compileReleaseNdk UP-TO-DATE
:app:compileReleaseSources
:app:lintVitalRelease
:app:transformClassesWithDexForRelease
:app:mergeReleaseJniLibFolders
:app:transformNative_libsWithMergeJniLibsForRelease
:app:processReleaseJavaRes UP-TO-DATE
:app:transformResourcesWithMergeJavaResForRelease
:app:validateExternalOverrideSigning FAILED
Error:Execution failed for task ':app:validateExternalOverrideSigning'.
> Keystore file /Users/me/Desktop/final apps/keystore.jks not found for
signing config 'externalOverride'. 

Hier ist mein Gradle

apply plugin: 'com.android.application'

android {
compileSdkVersion 23
buildToolsVersion "23.0.2"


defaultConfig {
    applicationId "com.waffles.vatsandbats"
    minSdkVersion 14
    targetSdkVersion 23
}

buildTypes {
    release {
        minifyEnabled false
         proguardFiles getDefaultProguardFile('proguard-android.txt'),
'proguard-rules.txt'     
    }
}
}

dependencies {

compile files('libs/acra-4.7.0-javadoc.jar')
compile files('libs/acra-4.7.0-sources.jar')
compile files('libs/acra-4.7.0.jar')
compile 'com.google.android.gms:play-services-appindexing:8.1.0'
compile files('libs/activation.jar')
compile files('libs/mail.jar')
compile files('libs/additionnal.jar')
compile 'com.android.support:support-v4:23.1.1'
compile 'com.android.support:appcompat-v7:23.1.1'


}
Waffles.Inc
quelle

Antworten:

128

Ich habe die Lösung gefunden. Ich habe den Pfad zur keystore.jksDatei verlegt. Die Suche nach der Datei auf meinem Computer hat diesen Pfad verwendet und alles hat super funktioniert.

Waffles.Inc
quelle
2
Ich habe diesen Fehler erhalten, nachdem ich meine .jks-Datei an einen anderen Speicherort verschoben und vergessen habe, in Android Studio zu aktualisieren. X) Danke
Arbitur
53

Datei -> Caches ungültig machen & neu starten ...

Erstellen -> Signierte APK erstellen -> Pfad im Dialogfeld überprüfen

Überprüfen Sie den Schlüsselspeicherpfad

Martin Pfeffer
quelle
13

Dies ist ein Problem, das beim Aufschreiben eines "Dateinamens" anstelle eines Pfads beim Generieren der .jks-Datei auftreten kann. Generieren Sie eine neue, legen Sie sie auf dem Desktop (oder einem anderen realen Pfad) ab und generieren Sie die APK neu.

Jacobo Koenig
quelle
2
Mit Android Studio können Sie einen Ordner auswählen, und das war mein Problem ... Ich habe den Ordner ausgewählt, nicht die Schlüsseldatei ... -1 für Android Studio, damit Sie auswählen können, dass etwas nicht funktioniert.
Luismi
11

Klicken Sie auf Vorhandene auswählen und wählen Sie erneut den Speicherort Ihrer JKS- Datei.

Geben Sie hier die Bildbeschreibung ein

Ich hoffe, dieser Trick funktioniert für Sie .

Muzammil
quelle
1
Genau das ist die genaue Lösung
TAHA SULTAN TEMURI
3

Ich habe gleiches Problem, weil ich Schlüsselspeicher Pfad nicht habe dann sehe ich Waffles.inc Lösungen und hatte ein neues Problem in meinem Android Studio 3.1 für Mac ein Windows - Dialog Problem hatte , wenn neue schaffen versuchen Schlüsselspeicher Pfad , es ist so

Geben Sie hier die Bildbeschreibung ein

Wenn Sie das gleiche Problem haben, machen Sie sich keine Sorgen über die schwarzen Fenster. Geben Sie einfach Ihren neuen Schlüsselspeicher ein und speichern Sie ihn.

Uray Febri
quelle
2

TL; DR: Überprüfen Sie den Pfad zu Ihrer keystore.jksDatei .

In meinem Fall ist Folgendes passiert:

Ich habe den Projektordner meiner gesamten App an einen anderen Ort auf meinem PC verschoben. Viel später wollte ich eine signierte apk-Datei generieren. Mir unbekannt, wurde der Standardspeicherort des Pfads zu meinem keystore.jksauf einen falschen Speicherort zurückgesetzt und ich hatte auf OK geklickt. Da der von mir ausgewählte Pfad keinen Schlüsselspeicher finden konnte, wurde dieser Fehler angezeigt.

Die Lösung bestand darin, zu überprüfen, ob der Pfad zu meiner keystore.jksDatei korrekt war.

Taslim Oseni
quelle
0

Öffnen Sie key.properties und überprüfen Sie, ob Ihr Pfad korrekt ist. (Ersetzen von \ nach /)

Beispiel: -

Ersetzen Sie von "storeFile = D: \ Projects \ Flutter \ Key \ key.jks" durch "storeFile = D: /Projects/Flutter/Key/key.jks".

Blutverlust
quelle
0

Versuchen Sie für Personen, die es oben versucht haben, den Schlüssel mit den Optionen -keypass und -storepass zu generieren , da ich beim Ausführen nur eines der Kennwörter eingegeben habe , wie Sie es in den React Native-Dokumenten getan haben. Dies führte zu einem Fehler beim Erstellen.

keytool -keypass PASSWORD1 -storepass PASSWORD2 -genkeypair -v -keystore release2.keystore -alias release2 -keyalg RSA -keysize 2048 -validity 10000

MattFitz
quelle
0

Unter Linux oder Ubuntu müssen Sie den vollständigen Pfad verwenden.

Zum Beispiel

/home/ubuntu/.android/keystorname.keystore

In meinem Fall habe ich ~statt verwendet /home/user/. Die Verwendung von Kurzschriften wie den folgenden funktioniert nicht

~/.android/keystorname.keystore
./keystorename.keystore
Dheeraj M Pai
quelle
0

Das Bearbeiten des Pfads der Keystore-Datei hat mein Problem gelöst.

Ritter
quelle