Définition de JDK dans Eclipse

117

J'ai deux JDK, pour Java 6 et 7.

Je souhaite construire mon projet en utilisant les deux. Au départ, nous avons uniquement construit contre 1.6. Je vois dans les paramètres de mon projet que je peux sélectionner 1,5, 1,6 1,7 comme niveau du compilateur.

Comment ces options sont-elles ajoutées à l'EDI? Je n'ai jamais installé Java 1.5. Supposons que je veuille Java 1.4. Comment pourrais-je faire apparaître cela dans la liste? J'ai ajouté deux JRE différents dans mes préférences IDE, mais ce n'est pas ce qui apparaît dans la liste déroulante.

MayoMan
la source

Réponses:

145

Vous gérez la liste des compilateurs disponibles dans le Window -> Preferences -> Java -> Installed JRE's tab.

Dans la boîte de dialogue de configuration du chemin de construction du projet, sous l'onglet bibliothèques, vous pouvez supprimer l'entrée pour JRE System Library, cliquer sur Add Libraryet choisir le JRE installé avec lequel compiler. Certains compilateurs peuvent être configurés pour compiler à une version de compilateur de niveau arrière. Je pense que c'est pourquoi vous voyez les options de version d'ajout.

Chris Gerken
la source
J'avais ajouté mon propre JRE via l'option "Ajouter" dans la fenêtre des JRE installés. Le problème est que lorsque j'ai vérifié que celui que je voulais utiliser par Eclipse, il n'a pas été sélectionné comme JRE d'espace de travail par défaut. Ainsi, quand j'ai regardé dans les propriétés de mon projet, la "bibliothèque système JRE" était toujours là. Lorsque je l'ai supprimé et sélectionné "Utiliser le JRE Workspace par défaut", il a récupéré ma modification. J'aurais pensé qu'Eclipse aurait dû mettre à jour mes projets JRE lorsque j'ai sélectionné un autre JRE pour mon espace de travail
MayoMan
1
Même s'il dit "utiliser par défaut", il utilise vraiment la valeur par défaut au moment où le projet a été créé / importé et il ne regarde jamais en arrière.
Chris Gerken
2
Pour ceux qui ne trouvent pas l'élément «Préférences», il se trouve dans le menu déroulant «Fenêtre».
Greg Quinn
80

Certaines étapes supplémentaires peuvent être nécessaires pour définir correctement le projet et l'espace de travail par défaut JRE, comme MayoMan l'a mentionné. Voici la séquence complète dans Eclipse Luna:

  • Faites un clic droit sur votre projet> propriétés
  • Sélectionnez «Java Build Path» à gauche, puis «JRE System Library», cliquez sur Edit…
  • Sélectionnez "Workspace Default JRE"
  • Cliquez sur "JRE installés"
  • Si vous voyez JRE que vous voulez dans la liste, sélectionnez-le (sélectionner un JDK est également OK)
  • Sinon, cliquez sur Rechercher…, accédez à Ordinateur> Windows C:> Program Files> Java, puis cliquez sur OK
  • Vous devriez maintenant voir tous les JRE installés, sélectionnez celui que vous voulez
  • Cliquez sur OK / Terminer un million de fois

Facile ... non.

Georgie
la source
3
J'ai dû changer ma variable d'environnement JAVA_HOME dans le dossier du JDK aussi, et le JRE n'était pas suffisant.
Noumenon
2
Merci Georgie! Websters définit par défaut comme "une sélection automatiquement utilisée par un programme en l'absence d'un choix fait par l'utilisateur". Pourtant, "Workspace Default JRE" d'Eclipse n'est pas sélectionné par défaut.
JohnC
Merci @Georgie, tu as sauvé mes heures :)
Bhuvan Arora
13

Pour dire à eclipse d'utiliser JDK, vous devez suivre les étapes ci-dessous.

  1. Sélectionnez le menu Fenêtre , puis sélectionnez Préférences . Vous pouvez voir une boîte de dialogue.
  2. Sélectionnez ensuite Java ---> JRE installés
  3. Cliquez ensuite sur Ajouter et sélectionnez Standard VM puis cliquez sur Suivant
  4. Dans la maison JRE, accédez au dossier dans lequel vous avez installé le JDK (par exemple, dans mon système, mon JDK se trouvait dans C: \ Program Files \ Java \ jdk1.8.0_181 \)
  5. Cliquez maintenant sur Terminer .

Après avoir terminé les étapes ci-dessus, vous avez terminé maintenant et eclipse commencera à utiliser le JDK sélectionné pour la compilation.

Gunta Vaishnavi
la source
3

Le compilateur d'Eclipse peut garantir que vos sources java sont conformes à une version JDK donnée, même si cette version n'est pas installée. Cette fonctionnalité est utile pour assurer la compatibilité ascendante de votre code.

Votre code sera toujours compilé et exécuté par le JDK que vous avez sélectionné.

Garrett Hall
la source
2

JDK 1.8 a une fonctionnalité plus enrichie qui ne prend pas en charge de nombreuses éclipses.

Si vous ne trouvez pas le niveau de conformité java 1.8 dans le compilateur java, continuez et installez l'éclipse 32 bits ou 64 bits ci-dessous en fonction de la prise en charge de votre système.

  1. Installez jdk 1.8, puis définissez JAVA_HOME et CLASSPATH dans la variable d'environnement.
  2. Téléchargez eclipse-jee-neon-3-win32 et décompressez: prend en charge java 1.8
  3. Ou téléchargez Oracle Enterprise Pack pour Eclipse (12.2.1.5) et décompressez: prend en charge java 1.8 avec OS 64 bits
  4. Faites un clic droit sur votre projet> propriétés
  5. Sélectionnez «Java Compiler» à gauche et définissez le niveau de conformité Java sur 1,8 [sélectionnez dans la liste déroulante 1,8]
  6. Essayez d'exécuter un programme java prenant en charge java 8 comme l'expression lambda comme ci-dessous et si aucune erreur de compilation, cela signifie que votre eclipse prend en charge java 1.8, quelque chose comme ceci:

    interface testI{
        void show();
    }
    
    /*class A implements testI{
        public void show(){
            System.out.println("Hello");
        }
    }*/
    
    public class LambdaDemo1 {
        public static void main(String[] args) {
            testI test ;
            /*test= new A();
            test.show();*/
            test = () ->System.out.println("Hello,how are you?"); //lambda 
            test.show();
        }        
    }
Ashwini Panda
la source
Bienvenue dans StackOverflow et merci pour votre tentative d'aide. Pensez à améliorer la lisibilité de votre réponse en vous familiarisant avec le formatage. Faire le tour pourrait vous aider à le faire.
Yunnosch
2

Configuration des JDK

  1. Windows -> Préférences -> JRE installés, pour configurer les JDK installés
  2. Propriétés du projet, compilateur Java, activer les paramètres spécifiques au projet (ou configurer les paramètres de l'espace de travail), conformité JDK
  3. Propriétés du projet, chemin de construction Java, bibliothèques, ajouter une bibliothèque, bibliothèque système JRE, espace de travail par défaut ou autre JRE (l'un des JRE configurés dans

Maven

MAIS SI vous utilisez maven, à condition que vous ayez votre dernier JRE (Windows / Préférences / JRE installés) - par exemple JDK 1.8

Vous pouvez sélectionner le niveau 1.6, 1.7, 1.8 en configurant les attributs source et cible de maven-compiler-plugin, comme ceci

            <plugin>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.3</version>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                </configuration>
            </plugin>

Et idéalement, si vous avez un pom parent, vous pouvez le faire pour tous les modules (projets Eclipse) du pom parent, en un seul endroit.

Source et cible Si nous voulons utiliser les fonctionnalités du langage Java 8, la valeur –source doit être définie sur 1.8. De plus, pour que les classes compilées soient compatibles avec JVM 1.8, la valeur –target doit être 1.8.

Mise à jour de la bibliothèque JRE qui est cassée dans de nombreux projets à la fois (avec Maven)

Plutôt que de mettre à jour une par une la bibliothèque JRE, laissez Maven le faire pour vous.

La sélection des projets et un clic droit pour Maven -> Mettre à jour le projet définira la bibliothèque système sur le chemin du JDK installé, au cas où les chemins seraient rompus (parce que vous avez installé un nouveau JDK ou importé d'un autre ordinateur, etc.) et définissez la conformité JDK en fonction du paramètre source et cible maven dans le fichier pom.

José Manuel Gomez Alvarez
la source