edit : (aug-2016)
Cette question date de novembre 2013 (alors qu'Android Studio était encore en mode Developer Preview),
Actuellement (AS v2.2, août-2016), lors de l'installation, AS demande de choisir le dossier du SDK (ou de l'installer par défaut) et il s'applique automatiquement au projet que vous ouvrez.
Cela signifie que toute solution de contournement ou correctif éventuel n'est pas pertinent car le problème n'est plus reproductible.
question initiale :
Nous avons ce projet avec plusieurs modules qui est déjà configuré et s'exécute correctement sur un autre PC de développeur en utilisant un wrapper. J'ai cloné les submodules git complets dans ma machine.
Ci-dessous, c'est une impression directe de ma ligne de commande :
$ ./gradlew
FAILURE: Build failed with an exception.
* Where:
Build file '/home/budius/project_name/ActionBar-PullToRefresh/library/build.gradle' line: 1
* What went wrong:
A problem occurred evaluating project ':ActionBar-PullToRefresh:library'.
> SDK location not found. Define location with sdk.dir in the local.properties file or with an ANDROID_HOME environment variable.
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
BUILD FAILED
Total time: 6.378 secs
$ echo $ANDROID_HOME
/home/budius/Applications/android-studio/sdk
$
donc, comme vous pouvez le voir le ANDROID_HOME est là. Que veulent-ils d'autre ? Ce qui ne va pas ici.
fonctionnant sur Ubuntu 13.04
éditer :
J'ai déjà créé un fichier local.properties avec sdk.dir=<path>
sur le projet Root et cela fonctionne. Mais cela rend le code plus difficile à porter sur les systèmes et le serveur de construction, donc la question reste ouverte.
Quelqu'un sait pourquoi le ANDROID_HOME ne fonctionne pas et ce qu'il faut faire pour qu'il fonctionne ?
1 votes
Essayez de spécifier le chemin de votre SDK dans un fichier local.properties, sous le répertoire racine de votre projet. Le fichier devrait avoir ceci : sdk.dir=<sdk_install_dir>
1 votes
Bonjour @GabrieleMariotti ; merci pour la suggestion. Mais j'ai déjà fait cela et cela fonctionne. Mais cela rend le code plus difficile à porter sur les systèmes n build server. J'aimerais savoir si quelqu'un sait pourquoi le ANDROID_HOME ne fonctionne pas et ce qu'il faut faire pour qu'il fonctionne ? J'ai ajouté cette information à la question.
0 votes
Je vous suggère de poster dans cette communauté G+. plus.google.com/communities/114791428968349268860 Il s'agit d'une communauté officielle de Google. En général, l'équipe de Google répond rapidement.
0 votes
Oui, je vais les essayer. Merci.
2 votes
@Budius J'ai eu un cas similaire avec le message d'erreur. La solution a été d'ajouter le
settings.gradle
dans le dossier du projet.0 votes
Dans votre mise à jour d'août 2016, vous dites "Cela signifie que toute solution de contournement ou correctif possible n'est pas pertinent car le problème n'est plus reproductible". Ce n'est pas vrai du tout. Il est vrai qu'en exécutant Android Studio en premier, le problème est résolu car il crée local.properties, et après cela gradlew fonctionne bien. Mais cela n'est pas utile à quelqu'un qui récupère un projet à partir d'un VCS et qui souhaite simplement lancer gradlew sans jamais faire apparaître l'IDE. Il ne devrait même pas être nécessaire de installer un IDE.
0 votes
@DonHatch et l'IDE n'est effectivement pas nécessaire. Vous pouvez créer manuellement le fichier local.properties et cela fonctionnera. C'est juste que pour les 99%, l'IDE le fait automatiquement.