web-dev-qa-db-fra.com

Maven dans Eclipse se plaint que "Impossible de localiser le compilateur Javac" chaque fois que POM a changé

J'ai reçu un message d'erreur à chaque fois que je modifiais mon pom.xml dans Eclipse.

Build errors for myapp; org.Apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.Apache.maven.plugins:maven-compiler-plugin:2.0.2:compile (default-compile) on project web: Compilation failure
Unable to locate the Javac Compiler in:
  C:\Program Files (x86)\Java\jre6\..\lib\tools.jar
Please ensure you are using JDK 1.4 or above and
not a JRE (the com.Sun.tools.javac.Main class is required).
In most cases you can change the location of your Java
installation by setting the Java_HOME environment variable

J'ai défini la variable d'environnement Java_HOME. C'est: Java_HOME = D:\Java\jdk1.6.0_23

Merci.

23
Tom

Voici l'étape que j'ai effectuée pour résoudre ce problème (Eclipse 3.7 Indigo):

Fenêtre -> Préférences -> Java -> JRE installés -> J'ai un JRE de l'emplacement JDK, mon emplacement ressemble à C:\Program Files\Java\jdk1.6.0_26

Fenêtre -> Préférences -> Java -> JRE installés -> Environnements d'exécution -> Sélectionnez JavaSE-1.6 et sélectionnez un JDK compatible qui devrait être celui défini dans le étape précédente.

55
Sydney

Rien de ce qui précède n'a fonctionné pour moi, mais lorsque j'ai suivi les étapes suivantes, le problème a disparu.

  • Aller à Fenêtre -> Préférences -> Java -> JRE installés
  • Sélectionnez le JRE que vous utilisez (Doit être celui à l'intérieur de jdk. Ex: C:\Program Files\Java\jdk1.6.0_25\jre)
  • Appuyez sur Modifier -> Ajouter des fichiers JAR externes ...
  • Naviguez vers Java\jdk1.6.0_25\lib et sélectionnez tools.jar et appuyez sur Enter
  • Appuyez sur Terminer et [~ # ~] ok [~ # ~]
19
isuru chathuranga

Fenêtre -> Préférences -> Java -> JRE installés -> Environnements d'exécution -> cochez la case à droite

4
Gambotic

J'ai eu ce même problème que je viens de comprendre. Le JRE d'exécution a été spécifié correctement dans CHAQUE autre partie d'Eclipse.

J'utilise une configuration d'exécution Eclipse ...

Exécuter la configuration est ENCORE UN AUTRE endroit où le JRE Java runtime est spécifié. Si vous utilisez une configuration d'exécution maven, ouvrez-la, cliquez sur l'onglet JRE et sélectionnez le bon (JDK) "Runtime JRE".

4
april26

Cela a également fonctionné pour moi:

  1. Allez dans Fenêtre -> Préférences -> Java -> JRE installés
  2. Sélectionnez le JRE que vous utilisez (Doit être celui à l'intérieur de jdk. Ex: C:\Program Files\Java\jdk1.6.0_25\jre)
  3. Appuyez sur Modifier -> Ajouter des fichiers JAR externes ...
  4. Accédez à Java\jdk1.6.0_25\lib et sélectionnez tools.jar et appuyez sur Entrée
  5. Appuyez sur Terminer et OK
4
Akansh Bhatnagar

L'ajout des lignes deux suivantes au tout début de votre fichier Eclipse.ini devrait indiquer à maven où trouver JDK:

-vm
C:\Program Files\Java\jdk1.6.0_23\bin\javaw.exe

ou quel que soit le chemin dans lequel vous avez installé JDK.

2
mazaneicha

J'ai eu un problème similaire; ce que vous devez essayer est d'effectuer une mvn install à partir du répertoire POM lui-même, toute installation Maven que vous ferez ensuite dans Eclipse lui-même fonctionnera également par la suite.

1
levivanzele

1. Allez dans Fenêtre -> Préférences -> Java -> JRE installés. 2. Sélectionnez le JRE que vous utilisez (Doit être celui à l'intérieur de jdk. Ex: C:\Program Files\Java\jdk1.6.0_25\jre) 3.Appuyez sur Édition -> Ajouter des fichiers JAR externes ... 4.Parcourez vers Java\jdk1.6.0_25\lib et sélectionnez tools.jar et appuyez sur Entrée 5.Appuyez sur Terminer et OK.

Cela a fonctionné pour moi.

1
Nitin

J'ai eu un problème similaire qui a été résolu en spécifiant les attributs du plugin maven-compiler comme ci-dessous:

<plugin>
            <groupId>org.Apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <configuration>
<!-- Need to provide the below properties as the current maven-compiler-plugin version is 2.0.2 and defaults to JDK 1.3 for compiling -->
                <source>1.5</source>
                <target>1.5</target>
            </configuration>
        </plugin>

J'ai dû spécifier explicitement l'attribut source et cible. il semble que la compilation dépend également de la version maven-compiler-plugin et de son paramètre JDK par défaut. Le mien était 2.0.2 et sa valeur par défaut était JDK 1.3 je suppose.

1
hakish

Si vous rencontrez ce problème lorsque vous essayez d'exécuter maven à partir d'Eclipse, vous pouvez vous référer à cette discussion , qui décrit également la solution.

1
Raghuram

Il semble que votre Java_HOME ne soit pas configuré correctement. Pouvez-vous faire écho à Java_HOME depuis votre terminal et voir où il pointe? D'après le journal des erreurs ci-dessus, il semble pointer vers le dossier des fichiers programme.

0
isobar

Fenêtre -> Préférences -> Java -> JRE installés, ajoutez jdk6 pour pointer vers votre jdk (C:\Program Files\Java\jdk1.6.0_25), supprimez jre6 par défaut. Cela fonctionne.

0
adeveloper