39 votes

SDK.DIR est manquant ? Projet de mise à jour d'Android ?

J'obtiens cette erreur lorsque je fais

$ ant release
sdk.dir is missing. Make sure to generate local.properties using 'android update project' or to inject it through an env var

en tapant dans Android update project j'obtiens une autre erreur disant que je dois spécifier le chemin .... au projet.

Ensuite, j'essaie de cd dans le répertoire de mon projet et de faire

android update -p .
android update -path . 

etc. et il est dit -p et -path ne sont pas reconnus au niveau mondial.

Quelqu'un pourrait-il me donner la syntaxe exacte ?

29voto

Code Droid Points 3384

Cd dans le répertoire du projet et exécutez ce qui suit : Le mot projet fait partie de la commande, et ne doit pas être remplacé par un nom de projet réel. La documentation n'est pas claire à ce sujet et devrait être améliorée.

   android update project -p .

27voto

Artjom Points 889

Vous pouvez utiliser l'argument de la ligne de commande pour définir le sdk.dir, par ex :

ant -f xyz/build.xml clean release -Dsdk.dir=/Applications/adt-bundle-mac/sdk/

24voto

Snicolas Points 19644

Vous pouvez utiliser sdk.dir dans le fichier projet.properties pour définir la maison du sdk ou utiliser une variable d'environnement (plus flexible pour le travail en équipe).

export ANDROID_HOME=<the path to your sdks>

13voto

James Wald Points 6541

Vous pouvez injecter le ANDROID_HOME dans la variable d'environnement sdk.dir en utilisant la méthode suivante ant commandement.

$ ant debug -Dsdk.dir=$ANDROID_HOME

ANDROID_HOME doit être un chemin absolu tel que /Users/jameswald/Development/android-sdk-macosx .

6voto

strttn Points 11

J'ai eu le même problème. Après avoir joué avec les commandes de la ligne de commande pendant quelques minutes, j'ai fini par modifier le fichier local.properties directement.

Vous devriez disposer d'un fichier appelé local.properties au sein de votre

<app-directory>\platforms\android

dossier. Si vous n'en avez pas, vous pouvez le créer.

Dans le fichier, il devrait y avoir une référence qui spécifie où ant peut trouver votre Android sdk. Cela devrait ressembler à ceci :

sdk.dir=C:\\<path-to-sdk>\\sdk

Il suffit de mettre à jour vos coordonnées pour qu'il pointe vers votre dossier Android sdk correct.

Les doubles \N sont présents dans mon dossier. Je ne sais pas trop pourquoi mais ça semble fonctionner :)

Note : ce fichier doit également être copié dans votre CordovaLib qui est un dossier plus profond : <app-directory>\platforms\android\CordovaLib

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