Comment configurer le JDK pour Android Studio?

42

Je ne peux pas compiler un nouveau projet par défaut pour Android 2.1 car (?) Le JDK utilisé par Android Studio est JDK 1.7, mais il devrait s'agir du JDK 1.6.

Pour le changer, allez dans Fichier -> Structure du projet et essayez de trouver l'emplacement de JDK 1.6.

Mais lorsque je sélectionne son répertoire et que OKj'appuie sur, le message d'erreur suivant s'affiche:

Veuillez choisir un répertoire JDK valide

Veuillez choisir un répertoire JDK valide

Comme vous pouvez le voir sur la capture d'écran, j'essaie de définir Java 6 OpenJDK 64 bits comme nouveau JDK.

Que puis-je faire? Android Studio n'est-il pas compatible avec OpenJDK et dois-je utiliser Oracle JDK à la place?

Lucio
la source
Avez-vous essayé le bindossier?
Louis Matthijssen
J'ai essayé avec: ./bin| ./jre| ./jre/binmême message pour tous
Lucio
1
Pour moi, je devais juste utiliser le dossier ci-dessus /jredans la structure de répertoires, donc mon chemin est /usr/lib/jvm/java-8-oracleet non /usr/lib/jvm/java-8-oracle/jre. J'ai supposé que le chemin devait se terminer /jrepuisque le chemin par défaut (le JDK "incorporé") le faisait, mais si vous regardez dans le dossier par défaut, c'est un dossier appelé "jre" qui contient un autre dossier appelé "jre" .
Jack M

Réponses:

24

J'utilise OpenJDK 7 avec Android Studio et cela fonctionne très bien. (Je n'ai même pas installé Oracle JDK pour le moment.)

Sur cet écran que vous montrez (Structure du projet -> SKD Localisation) J'ai le chemin suivant pour l' emplacement JDK : /usr/lib/jvm/java-1.7.0-openjdk-amd64.

Daniel
la source
8

En inspectant studio.sh, vous pouvez également définir l' une des STUDIO_JDK, JDK_HOMEou les JAVA_HOMEvariables d' environnement pour pointer vers l'emplacement JDK.


studio.shvérifie les STUDIO_JDK, JDK_HOMEet les JAVA_HOMEvariables d' environnement dans l' ordre:

if [ -n "$STUDIO_JDK" -a -x "$STUDIO_JDK/bin/java" ]; then
  JDK="$STUDIO_JDK"
elif [ -n "$JDK_HOME" -a -x "$JDK_HOME/bin/java" ]; then
  JDK="$JDK_HOME"
elif [ -n "$JAVA_HOME" -a -x "$JAVA_HOME/bin/java" ]; then
  JDK="$JAVA_HOME"

Vous pouvez donc les définir comme il convient, puis Studio les prendra en charge.

Nuno
la source
Cela fonctionne aussi pour Windows. utile si vous avez un JDK avec DCEVM par défaut dans JAVA_HOME qui ne fonctionne pas avec android studio.
Mateus Viccari
5

Il semblerait qu'Android Studio ne reconnaisse pas OpenJDK. Je dois donc installer OracleJDK .

Ensuite, j'ai choisi le chemin d'accès à Oracle JDK et cela a fonctionné!

Lucio
la source
je l'ai installé mais je suis incapable de définir sa variable de chemin. pouvez-vous s'il vous plaît me dire comment puis-je faire cela?
Nitesh Verma
1
Oui, assurez-vous d’abord que java -versionvotre version Java est correctement affichée . Ensuite, dans la fenêtre AS, choisissez /usr/lib/jvm/jdk1.8.0/. C’était suffisant pour moi à ce moment-là :-)
Lucio
3

Cela a fonctionné pour moi:

  1. Découvrez le répertoire java:

    $ echo $JAVA_HOME
    /usr/lib/jvm/java-7-oracle
    
  2. Ouvrez Android Studio, puis Fichier-> Structure du projet.

  3. Sous SDK Location, après le répertoire java situé en haut
  4. Attendez quelques secondes et je reçois "0 errores 0 advertencias"

Ça a marché! :)

canorios
la source
2

Les étapes que j'ai suivies:

  1. Terminal ouvert et entrez echo $JAVA_HOME

  2. Copié le chemin affiché dans le terminal - Ctrl+ Shift+ Ccopie dans le terminal Ubuntu

  3. Dans le studio Android - Structure du projet - Coller le chemin copié

  4. Attendu que le logiciel reconnaisse et mette à jour les paramètres

  5. Cela a résolu le problème des paramètres Jdk non valides

anand24
la source
1

Si vous avez un ./bindossier avec JDK et Android Studio, vous pouvez définir la STUDIO_JDKvariable avant de l'exécuter studio.shdans un terminal:

STUDIO_JDK=./bin/jdk/ ./bin/android-studio/bin/studio.sh
antoineMoPa
la source
0

J'ai résolu ce problème. J'utilise AS 2.1 et JDK1.7 alors qu'il me fallait mettre à jour JDK1.8 pour certaines fonctions. Je télécharge le fichier d'installation java. Peut-être que j’ai seulement installé jre mais pas jdk. de sorte que AS m’avertisse toujours que "Veuillez choisir un répertoire JDK valide". Donc, je suppose que le problème du demandeur est le même que moi: vous devez installer un JDK mais pas jre.

Songtao Lou
la source
0

Je pense que vous avez peut-être installé le jdk ailleurs, par exemple /usr/local/java. Dans mon cas aussi, j'ai vu le même nom de dossier dans le répertoire indiqué sur votre capture d'écran.

Il suffit donc de vérifier si le jdk est présent ailleurs.

Udayraj Deshmukh
la source