web-dev-qa-db-fra.com

Problème de signature Keytool: le magasin de clés a été falsifié ou le mot de passe était incorrect

J'essaie de signer la version finale de mon application Android (le débogage a été signé correctement) pour l'API Google Maps: 

keytool -list -alias cancertrials -keystore /Users/syalam/Documents/workspace/Cancer_Trials/keys/release -storepass Android -keypass cancertrials

Mais je reçois l'erreur:

Java.io.IOException: Keystore was tampered with, or password was incorrect

Je suis certain que le mot de passe est correct, car lorsque j'essaie d'exporter mon application dans Eclipse, celle-ci demande le magasin de clés et le mot de passe, que je saisis correctement.

Vous ne savez pas pourquoi je ne peux pas signer ça? Je dois afficher Google Maps en mode de publication (fonctionne en mode débogage).

15
Sheehan Alam

Je ne pense pas que vous deviez inclure un storepass lorsque vous ne faites qu'une liste. Storepass crypte la clé privée qui n’est pas affichée lors de la création d’une liste. Essayez ceci:

keytool -list -keystore /Users/salam/Documents/yada/yada

Indiquez ensuite le mot de passe de votre magasin de clés lorsque vous y êtes invité. Si cela fonctionne, vous pouvez simplement essayer le clavier sur la ligne de commande.

Vous voudrez peut-être également vérifier et vous assurer que vous utilisez la même version de Java. Je ne pense pas que ce soit le problème, mais si ce qui précède n'aide pas, essayez-le.

24
chubbsondubs

D'une manière ou d'une autre sur Windows, le keytool n'accepterait pas le mot de passe. Je n'avais besoin que du mot de passe SHA1 pour configurer l'identifiant client sur le projet sur la console de développement Google. Ce qui suit a semblé fonctionner pour moi

keytool --list --keystore Android.jks --protected

Cela imprimait les clés SHA1 pour tous les alias. 

5
shauvik

J'ai le même problème avec jarsigner sur jdk1.6.0.31 lorsque je suis revenu à la version 1.6.0_29. Jarsigner fonctionne correctement. S'il vous plaît être conscient de la version de jdk.

2
Marek Gregor

Vérifiez votre nom d'alias une fois. Parfois, votre alias est différent de son nom d’alias keytool, il donne la même erreur.

2
Bhaskar

keytool -list -keystore "Path of the keystore"

Cette commande demandera le mot de passe dans les machines linux, alors que dans la machine Windows, il vous suffira d'entrer dans le magasin de clés de la liste.

0
Manas