web-dev-qa-db-fra.com

erreur keytool: Java.io.IoException: format AVA incorrect

Je suis nouveau dans le développement de Android; lorsque j'ai essayé de signer l'application, le message d'erreur suivant s'affiche. Quelqu'un peut-il m'aider à ce sujet?

keytool error :Java.io.IoException:Incorrect AVA format

J'ai trouvé une solution sur les forums, par exemple, je dois exécuter le debug.keystore mais je n'ai pas réussi.

161
pallavi

Vous avez probablement entré un caractère illégal (quelque chose comme, (virgule)) dans un champ Nom, Organisation ou ailleurs.

Bien sûr, si vous voulez vraiment que certains personnages puissent être échappés avec\sign

445
rule

J'ai rencontré une erreur en essayant d'exporter un fichier .apk signé avec Eclipse ADT. L'erreur était la même que votre erreur. Dans mon cas, j'ai utilisé un signe + avant le code du pays. En supprimant le signe + de ce nom, le problème a été corrigé et m'a permis d'exporter intégralement mon fichier .apk signé. En outre, cette erreur peut se produire lorsque vous utilisez une virgule, une barre oblique, un point-virgule, une citation.

43
Ratna Halder

Vous avez essayé d'utiliser des caractères spéciaux lors de l'exportation d'apk. Vous ne pouvez pas utiliser ces caractères spéciaux dans les champs affichés lors de la création de l'apk. Le jeu de caractères spéciaux comprend:

  • Virgules (,)
  • Symbole d'addition (+)
  • Guillemet (")
  • Barre oblique inverse ("\")
  • Crochets (<et>)
  • Point-virgule (;)
19
surhidamatya

Je suis venu sur cette erreur quand je n'ai pas défini l'option du nom distinctif du tout. Cela a été corrigé en définissant l'option sur une chaîne correctement formatée.

cette commande a échoué avec l'exception de format AVA: (les sauts de ligne sont ajoutés pour des raisons de lisibilité)

C:\Program Files\Java\jdk1.6.0_45\jre\bin>keytool 
-genkey -v -dname PatrickTaylor -validity 10000 
-keystore C:\drops\patrickkeystore 

cette commande s'est terminée avec succès:

C:\Program Files\Java\jdk1.6.0_45\jre\bin>keytool 
-genkey -v -dname PatrickTaylor -validity 10000 
-keystore C:\drops\patrickkeystore 
-dname "cn=Patrick Taylor, ou=engineering, o=company, c=US"
5
Patrick

J'ai résolu ces exceptions en changeant le code du pays:

+91 à India

4
Stephen

ceci "Vous avez probablement entré un caractère illégal (quelque chose comme, (virgule)) dans un champ pour Nom, Organisation ou ailleurs." a fonctionné pour moi. J'ai eu une virgule sur l'état ou la province. veuillez marquer cette réponse par règle comme la réponse; comme + en +91 est un caractère spécial.

3

Google ne peut-il pas dire "caractère invalide"? Au lieu de cela, ils disent "format AVA Incorret". Supprimez tous les caractères non alphanumériques, aucun accent, aucune lettre étrange.

0
Josh

Caractères spéciaux/échapper à toutes les bonnes réponses/pourrait être le problème; vous ne partagiez pas votre ligne de commande "keytool" - plus difficile de donner une réponse précise. Si vous essayez de générer une paire de clés pub/privée (paramètre "-genkeypair"), alors 1 problème est que le nom distinctif de l'objet de certification ("- dname" arg) n'a pas été spécifié. dans le bon AVA X.500 (" A attribut - V alue-- A ssertion ") au format. Par exemple, en omettant le "CN =" devant le nom commun du sujet (CN). Param devrait ressembler à ceci:

keytool ... -dname="CN=SomeCertSubject" ...

Dans ce nom distinctif param, " CN " ("Nom commun") est le " A ttribute "," SomeCertSubject "est le" V alue ".

0
user1172173