218 votes

keytool error :java.io.IoException:Format AVA incorrect

Je suis nouveau dans le développement Android. Lorsque j'ai essayé de signer l'application, j'ai obtenu l'erreur suivante. Quelqu'un peut-il m'aider à résoudre ce problème ?

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

J'ai trouvé quelques solutions sur les forums, par exemple, je dois exécuter la commande debug.keystore mais je n'ai pas réussi.

0 votes

0 votes

0 votes

Google ne peut pas dire "Caractère non valide". Au lieu de cela, ils disent "format AVA incorrect". Supprimez tous les caractères non alphanumériques, les accents et les lettres bizarres.

556voto

rule Points 2001

Vous avez probablement saisi un caractère illégal (quelque chose comme, (virgule)) dans un champ pour le nom, l'organisation ou autre.

Bien sûr, si vous le souhaitez vraiment, vous pouvez échapper à certains caractères avec le signe \.

Le signe "+" (signe plus) cause également ce problème. (Les gens ont souvent tendance à utiliser le signe + pour le champ du code pays).

30 votes

Pour information, si vous voulez vraiment une virgule dans un champ, vous pouvez l'échapper avec une barre oblique inverse, par exemple Acme\, Inc. Voir docs.oracle.com/javase/6/docs/technotes/tools/solaris/ . Cela fonctionne également dans la boîte de dialogue de signature de l'IDE Eclipse.

1 votes

J'ai trouvé dans le code la liste des caractères qui doivent être échappés ,+=<># ;"

55voto

AndroidCuet Points 549

J'ai rencontré une erreur en essayant d'exporter un fichier .apk signé avec Eclipse ADT. L'erreur était la même que la vôtre. 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é résolu et j'ai pu exporter entièrement mon fichier .apk signé. En outre, cette erreur peut se produire lorsque vous utilisez une virgule, une barre oblique, un point-virgule ou une citation.

0 votes

Merci. J'ai aussi utilisé le signe '+'. )

0 votes

Merci. Cela a résolu mon problème, j'ai utilisé le + dans le code du pays.

7voto

Patrick Points 105

Je suis tombé sur cette erreur alors que je n'avais pas du tout défini l'option "distinguished name". Cette erreur a été corrigée en définissant l'option sur une chaîne de caractères formatée de manière valide.

cette commande a échoué avec l'exception du format AVA : (les retours à la ligne ont été ajoutés pour la 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 déroulé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"

5voto

Harsha Points 75

J'ai eu le même problème, la raison est un caractère invalide. juste " + " marque sur le code du pays aussi être une raison pour obtenir une erreur. être simple c'est la façon ici.

4voto

Ce "Vous avez probablement entré un caractère illégal (quelque chose comme ,(virgule)) dans un champ pour le nom, l'organisation ou autre. "Cela a fonctionné pour moi. J'avais une virgule sur l'état ou la province. Veuillez marquer cette réponse par la règle comme étant la réponse ; car + dans +91 est un caractère spécial.

1 votes

Pour moi, l'erreur était causée par une virgule entre le nom de la société et la SARL (merci à kingsley sithole).

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X