76 votes

Quelle version du JDK (niveau de langage) est requise pour Android Studio ?

Je suis un nouveau venu dans le monde d'Android et j'ai une formation .NET. J'essaie d'installer Android Studio mais j'ai un problème sur Android.com concernant la version du JDK requise pour développer des applications Android.

De la Page web du SDK il indique que JDK 6 est nécessaire (voir la section sur la configuration requise). Jim Wilson insistent également sur son cours sur Pluralsight (qui est assez récent, de mai dernier) que l'utilisation de la version 7 avec le SDK Android créera beaucoup de maux de tête et indique clairement qu'il faut utiliser uniquement le JDK 6.

Bien que dans le Page du studio Android (Sous l'étape d'installation 2), ils expliquent comment définir une variable d'environnement indiquant l'emplacement correct du JDK. Ici, ils utilisent un chemin de JDK 7

Sélectionnez Start menu > Computer > System Properties > Advanced System Properties . Ensuite, ouvrez Advanced tab > Environment Variables et ajoutez une nouvelle variable système JAVA_HOME qui pointe vers votre dossier JDK, par exemple C:\Program Files\Java\jdk1.7.0_21 .

Je suis pratiquement sûr que le pack ADT & Eclipse et le pack Android Studio utilisent le même SDK, mais je ne sais pas quelle version du JDK je dois installer. Mon seul objectif est d'éviter les problèmes autant que possible tout en faisant mes premiers pas dans le développement Android.

Clause de non-responsabilité : Je ne suis pas lié de quelque manière que ce soit à Pluralsight. Je suis juste un utilisateur normal qui suit les cours.

76voto

loeschg Points 6775

Mise à jour de Java 8 (3/19/14)

Parce que je suppose que cette question va commencer à surgir bientôt avec la sortie d'hier : Pour l'instant, il n'y a pas de date fixée pour le support de Java 8 par Android.

Voici une discussion sur le site /androiddev. http://www.reddit.com/r/androiddev/comments/22mh0r/does_android_have_any_plans_for_java_8/

Si vous voulez vraiment un support lambda, vous pouvez vous procurer Retrolambda -. https://github.com/evant/gradle-retrolambda . Je ne l'ai jamais utilisé, mais il semble assez prometteur.

Autre mise à jour : Android a ajouté le support de Java 7

Android prend désormais en charge Java 7 (sans la fonction "try-with-resource"). Vous pouvez en savoir plus sur les fonctionnalités de Java 7 ici : http://stackoverflow.com/a/13550632/413254 . Si vous utilisez gradle, vous pouvez ajouter ce qui suit dans votre build.gradle :

android {
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_7
        targetCompatibility JavaVersion.VERSION_1_7
    }
}

Réponse plus ancienne

J'utilise Java 7 avec Android Studio sans aucun problème (OS X - 10.8.4). Vous devez cependant vous assurer que le niveau de langage du projet est abaissé à 6.0. Voir la capture d'écran ci-dessous.

enter image description here

Ce que tehawtness a dit plus bas a aussi du sens. S'ils suggèrent le JDK 6, il est logique d'opter pour le JDK 6. L'un ou l'autre sera parfait.

enter image description here


Mise à jour : voir ce billet de SO -- http://stackoverflow.com/a/9567402/413254

2 votes

Est-ce toujours le cas pour Java 8 ? Quand sera-t-il pris en charge ?

1 votes

@domenicop en effet. Probablement pas avant deux ans :P.

2 votes

L'utilisation par Android de son propre environnement d'exécution est la raison pour laquelle Android est toujours en retard de quelques années sur les versions de Java.

3voto

tehawtness Points 180

Normalement, je suivrais ce que dit la documentation mais si l'instructeur a explicitement dit de s'en tenir au JDK 6, j'utiliserais le JDK 6 car vous voudriez que votre environnement de développement soit aussi proche que possible de celui des instructeurs. Ce serait nul si vous rencontriez un problème et que vous vous disiez que c'est peut-être parce que vous êtes sur JDK 7 que vous avez ce problème. En fait, je n'ai pas touché à Android récemment, mais je n'ai personnellement jamais rencontré de problèmes lorsque j'étais sous JDK 7, mais attention, je ne code que des applications Android de manière occasionnelle.

2voto

Alex Yan Points 1610

Essayez de ne pas utiliser de versions de JDK supérieures à celles qui sont prises en charge. J'ai déjà rencontré un problème de problème ambigu il y a quelques mois.

J'avais une bibliothèque jar que j'avais compilée avec le JDK 8 et je l'utilisais dans mon travail. Il me donnait une sorte de preDexDebug erreur à chaque fois que j'ai essayé de l'exécuter. Finalement, après des heures à essayer de déchiffrer les journaux d'erreurs, j'ai enfin eu une idée de ce qui n'allait pas. J'ai vérifié la configuration requise, changé le compilateur de 8 à 7, et ça a marché. On dirait que mettre mon jar dans une bibliothèque m'a coûté quelques heures plutôt que de les économiser...

1voto

Android Studio est maintenant fourni avec OpenJDK 8 . Les anciens projets peuvent toujours utiliser JDK7 o JDK8

Référence : https://developer.Android.com/studio/releases/index.html

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