Je compile un projet dans Eclipse en utilisant m2eclipse. J'ai défini le chemin JDK dans Eclipse comme ceci:
Windows-->preferences-->installed jres--> jdk1.7.xx path
Mais cela montre une erreur
[ERROR] COMPILATION ERROR :
[INFO] -------------------------------------------------------------
[ERROR] No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?
[INFO] 1 error
[INFO] -------------------------------------------------------------
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 1.424s
[INFO] Finished at: Tue Oct 29 15:21:01 IST 2013
[INFO] Final Memory: 5M/15M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler- plugin:3.1:compile (default-compile) on project TEST-WEB: Compilation failure
[ERROR] No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?
Réponses:
En outre, vous devrez peut-être modifier Maven JRE (voir la réponse @ jlars62), comme suit. Goto Run -> Run Configurations, en sélectionnant le Maven Build I en cours d'exécution (dans le panneau de gauche). Ensuite, j'ai cliqué sur l'onglet JRE et sélectionné l'option JRE par défaut de l'espace de travail
la source
Pour moi, c'est exactement ce dont se plaint le maven de l'éclipse
Donc, j'appuie sur le
Edit
bouton et change le chemin vers le dossier JDK, puis nettoie le projet et tout commence à fonctionnerla source
Installed JREs
dossier jdk au lieu de. Mais cela m'a vraiment résolu le problème. MerciJAVA_HOME
variable d'environnement sur le dossier racine JDK - obligatoire si vous exécutez la ligne de commande ou maven (mvn
).JAVA_HOME
pour plus d'informations)la source
Pour moi, rien n'a fonctionné jusqu'à ce que j'apporte cette modification à mon pom.xml:
Autres notes
Je pouvais voir que m2e s'exécutait dans un JRE, pas dans le JDK. Rien de ce que j'ai fait n'a changé cela, y compris en ajoutant ceci à eclipse.ini:
En fin de compte, je n'ai jamais réussi à exécuter m2e dans un JDK, mais définir le compilateur Java explicitement (comme ci-dessus) a fait l'affaire.
la source
Dans mon cas, cela a été résolu en faisant ceci:
Accédez à votre «Configuration d'exécution» et configurez votre JRE en JDK.
J'ai copié la réponse juste au cas où elle serait supprimée pour une raison quelconque, mais la source est ici
la source
J'obtenais cette erreur lorsque j'essayais de faire un build maven depuis eclipse.
Pour moi, la réponse allait
Run
->Run Configurations
, en sélectionnant leMaven Build
je courais (dans le panneau de gauche). Ensuite, j'ai cliqué sur l'JRE
onglet et sélectionné l'optionWorkspace default JRE
la source
peut être jre est déjà ajouté
et recherchez le JDK dans mon chemin de cas était
C:\Program Files\Java\jdk1.8.0_111
vous verrez une fenêtre comme celle-ci
Et vous avez terminé.
la source
Je suis même question et je viens d' ajouter
JAVA_HOME
à des variables d'environnement .JAVA_HOME
invite de commande ouverte à partir du répertoire du projet et exécutémvn clean install
(n'utilisez pas le terminal intellij).la source
J'ai essayé tout ce qui précède, cependant, en obtenant toujours le même message d'erreur.
Dans mon cas, un JRE réel a été incorrectement utilisé en tant que bibliothèque système JRE dans le chemin de génération spécifique au projet, ce qui était évidemment en train de remplacer tous les autres paramètres discutés ici.
Si tel est le cas dans votre cas, essayez ce qui suit:
la source
<build> <sourceDirectory>flockWebclient</sourceDirectory> <resources> <resource> <directory>resources</directory> <excludes> <exclude>**/*.java</exclude> </excludes> </resource> </resources> <plugins> <plugin> <artifactId>maven-compiler-plugin</artifactId> <version>3.5.1</version> <configuration> <source>1.8</source> <target>1.8</target> </configuration> </plugin> </plugins> </build>
votre pom.xmlUne alternative si la réponse de jaipster ne fonctionne pas est d'aller dans:
Fenêtre> Préférences> Java> JRE installés
Ensuite, pour éditer le jre afin qu'il pointe vers le jdk et non vers le jre (la maison jre déposée dans l'éditeur de package jre)
Cela a fonctionné pour moi.
la source
Si vous exécutez la
Maven
commande à partir decmd
, assurez-vous de définir le chemin jdk avant d'exécuter la commande. Dans mon cas, j'ai créé un.bat
fichier contenant les éléments suivants:la source
J'ai rencontré le même problème en essayant de créer un fichier jar de mon application de projet à l'aide
mvn clean install
, même si l'application fonctionnait bien lors de l'exécution à partir d'Eclipse.Le problème était, en effet trop naïf, que je n'avais pas défini la variable d'environnement JAVA_HOME . Tout ce que j'avais à faire était de définir la variable d'environnement JAVA_HOME sur le répertoire JDK, assurez-vous que ce n'est que "\ bin" et sans point -virgule ";" .
Comment j'ai compris que c'était:
L'application fonctionnait bien dans Eclipse car la bibliothèque système JRE faisait référence à JRE dans le dossier JDK au lieu du dossier JRE externe sans JDK. [Comme expliqué très bien dans d'autres réponses]
Cette configuration ne s'applique pas à la commande maven que nous exécutons à l'invite de commande. Il cherchera toujours la variable JAVA_HOME pour accéder à la bibliothèque système JRE et lorsqu'il ne sera pas trouvé, il se réfère au dossier JRE externe sans JDK.
la source
Il existe plusieurs options à spécifier.
Étapes: directement sur le projet dans l'explorateur de projets Allez dans Exécuter-> Exécuter la configuration -> Cliquez sur Maven Build -> Cliquez sur votre configuration de génération / ou créez une nouvelle configuration. Vous verrez la fenêtre comme l'instantané ci-dessous, cliquez sur l'onglet JRE là-bas.
Vous voyez que vous avez 3 options 1) JRE par défaut de l'espace de travail 2) Environnement d'exécution 3) JRE alternatif 1) Le JRE par défaut de l'espace de travail est défini dans le menu 'Fenêtre' en haut -> Préférences -> Java -> JRE installés - Ici, vous pouvez ajouter votre jdk 2) Environnement d'exécution jdk peut être défini dans pom.xml comme mentionné par @ksnortum
3) Un JRE alternatif peut être utilisé pour sélectionner un jdk dans votre répertoire
la source
Pour moi, le JRE était dans la variable d'environnement PATH avant le chemin JDK
J'ai donc supprimé 1. Les échanger les résoudrait probablement aussi.
la source
Ma réponse se rapporte à l'environnement Eclipse dans Windows.
Je suis allé dans Préférences -> Java -> JRE installés, je n'ai pas vu le JDK ici. Je n'ai vu que le JRE ici. J'ai donc ajouté le JDK, puis décoché le JRE. Puis vérifié JDK. J'ai ensuite exécuté le fichier POM à l'aide de Run Configurations. Choisissez l'onglet JRE et sélectionnez l'option "Espace de travail par défaut ..." Voici les images
la source
Énoncé du problème = Aucun compilateur n'est fourni dans cet environnement. Peut-être que vous utilisez un JRE plutôt qu'un JDK? intellij
Solution
Veuillez définir la variable d'environnement comme ci-dessous pour résoudre le problème
Nom de variable : JAVA_HOME
Valeur variable : C: \ Program Files \ Java \ jdk1.8.0_202
Nom de variable : M2_HOME
Valeur variable : C: \ Program Files \ apache-maven-3.6.0
De plus , ajoutez Java et le chemin maven dans " Variables système " comme ci-dessous:
C: \ Program Files \ Java \ jdk1.8.0_202 \ bin
C: \ Program Files \ apache-maven-3.6.0 \ bin
la source
Il y a une autre réponse possible à cette question, et je suis peut-être la seule personne assez idiote pour être tombée dessus, mais je pense que cela vaut la peine d'être ajouté, car aucune des autres réponses ne s'appliquait car j'avais déjà ces paramètres corrects.
Lorsque vous installez un JDK, le programme d'installation vous demande où vous souhaitez installer les fichiers. Par défaut, sous Windows, c'est quelque chose comme C: \ Program Files \ Java \ jdk1.8.0_74 (ou quelle que soit la version que vous installez).
Il vous demande ensuite un répertoire pour installer le JRE, qui par défaut est quelque chose comme C: \ Program Files \ Java \ jre1.8.0_74.
Notez que l'un est jdk 1.8.0_74 et l'autre est jre 1.8.0_74
Je précipitais les choses et pensant que le programme d'installation me posait la même question deux fois, définissez mes emplacements d'installation JDK et JRE sur D: \ devtools \ jdk \ jdk1.8.0_74, ce qui a entraîné le remplacement par le programme d'installation du JDK par le JRE. Cela a entraîné (entre autres) un javac.exe manquant dans mon bac JDK, et la même erreur que l'OP a signalée ici dans toutes mes versions de maven.
la source
J'ai une solution.
La solution la plus courante pour ce problème consiste à modifier l' emplacement jdk en tant que JRE installés au lieu de l' emplacement JRE, mais cela n'a pas résolu mon problème cette fois-ci.
J'ai donc fait ce qui suit pour résoudre le problème. Développez l' onglet JRE installés et vous trouverez un environnement d'exécution onglet .
Cliquez sur votre environnement d'exécution préféré. Dans mon cas, c'était JAVASE-1.8 . Là, il montre 2 options. JDK et JRE . Sélectionnez JDK et le problème est résolu.
la source
Je viens de perdre 3 heures avec ce problème jusqu'à ce que je réussisse à le faire fonctionner. J'ai eu cette erreur dans le terminal Eclipse lors de l'émission d'une commande de compilation mvn:
Aucun compilateur n'est fourni dans cet environnement. Peut-être que vous utilisez un JRE plutôt qu'un JDK?
J'ai donc lu ici que je dois créer une nouvelle variable système appelée JAVA_HOME et la faire pointer vers le dossier d'installation de jdk. Cependant, cela a généré une autre erreur:
L'option source 1.5 n'est plus prise en charge. Utiliser 1.6 ou version ultérieure
Impossible de trouver un correctif pour celui-ci, alors ...
Donc, le correctif pour tout faire disparaître est d'installer Java SE Development Kit 8! J'utilisais 9 en pensant que si c'était le dernier, ça devait être mieux ...
En tous cas...
Installez JDK8 à partir d'ici: http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
Définissez ensuite la valeur environnementale du système JAVA_HOME - tutoriel ici: https://docs.oracle.com/cd/E19509-01/820-3208/inst_cli_jdk_javahome_t/
Redémarrez Eclipse et profitez-en! (c'est du moins ce que j'ai fait)
En espérant que cela épargnera à quelque pauvre vagabond quelques ennuis.
la source
Dans mon cas, j'avais un chemin de variable système à l'emplacement "C: \ ProgramData \ Oracle \ Java \ javapath".
Dans l'emplacement "C: \ ProgramData \ Oracle \ Java \ javapath" javaw uniquement là. Je reçois donc la même erreur.
Une fois que j'ai supprimé tous les fichiers du dossier "C: \ ProgramData \ Oracle \ Java \ javapath", mon erreur a été résolue.
la source
J'ai essayé la plupart des réponses sans succès. Ce qui a fonctionné pour moi était (après avoir suivi https://stackoverflow.com/a/21279068/2408893 ):
la source
Bien que la question concerne l'erreur de
Eclipse
configuration, mais a pensé à une solution pour corriger cette erreur avecIntelliJ
et la configuration de Windows 10 peut également être utile ici.1 . Allez dans
File
->Settings
->Build, Execution, Deployment
->Build Tools
->Maven
->Importing
2 . Set
JDK
pourImporter
comme indiqué ci - dessous pourJAVA_HOME
Doit également
JAVA_HOME
être défini surJDK
path dans Variables d'environnement -> Variables système et également être ajouté%JAVA_HOME%\bin
aux variables Path Systemla source
j'ai fait face au même problème, l'erreur que j'ai faite était que j'ai ajouté le chemin jre uniquement dans le chemin var, pas le chemin jdk .Lorsque le chemin jdk a été ajouté au chemin et que le projet maven fonctionne parfaitement.
la source
J'ai fait le changement suivant et cela a fonctionné pour moi. J'espère que cela aide quelqu'un.
la source
Essaye ça.
la source
Ajouter une nouvelle définition JRE (sélectionnez le chemin JDK), a fonctionné pour moi.
http://help.eclipse.org/neon/index.jsp?topic=%2Forg.eclipse.jdt.doc.user%2Ftasks%2Ftask-add_new_jre.htm
la source
J'obtenais la même erreur lorsque j'ai créé une nouvelle instance EC2 ubuntu 16.04 avec Java déjà installé dessus et lors de l'exécution de mvn clean package, j'ai rencontré ce problème et la solution ci-dessous a fonctionné pour moi.
Si vous travaillez sur un serveur Ubuntu, vous pouvez réessayer d'installer Java et pour cela, vous pouvez utiliser cette réponse Comment installer le JDK sur Ubuntu Linux
la source
Sous Windows 7 - 64 bits, un problème d'autorisations empêche le programme d'installation de décompresser le fichier C: \ Program Files \ Java \ jdk1.6.xx \ lib \ tools.jar dans votre fichier local. Ce fichier jar est ce que la version 3.x de maven-compiler-plugin utilise au lieu du javac habituel
Solution: Exécutez, en tant qu'administrateur, le programme d'installation Java JDK! Et assurez-vous que le fichier tools.jar se trouve dans le dossier C: \ Program Files \ Java \ jdk1.6.xx \ lib \
Dans le cas où vous utilisez le plug-in d'intégration m2e maven, vous voulez voir le fichier est visible pour Eclipse via les étapes suivantes dans Eclipse:
Allez dans Fenêtre -> Préférences -> Java -> JRE installés Sélectionnez le JDK que vous utilisez (C: \ Program Files \ Java \ jdk1.6.xx) Appuyez sur Modifier pour voir la liste des pots, y compris tools.jar, OU vous pouvez ajoutez-le en tant que Ajouter un fichier JAR externe. Ensuite, configurez l'exécution de maven en procédant comme suit:
Exécuter-> Exécuter les configurations-> Remplissez le nom, le répertoire de base et les objectifs. Ensuite, dans la même fenêtre, accédez à l'onglet JRE et pointez sur JDK \ jdk1.6.xx \
la source
En plus de répondre ci-dessus, je pourrais dire qu'il suffit d'essayer d'exécuter Maven à partir du terminal (en dehors d'Eclipse). De cette façon, s'il se construit de l'extérieur mais pas dans Eclipse, vous pouvez comprendre que le problème devrait être dans Eclipse.
la source
Il y a plusieurs réponses à cette question, mais toutes sont liées à la configuration du chemin droit du JDK, mais avec JRE seulement, nous pouvons résoudre ce problème.
Nous avons juste besoin d'utiliser l'assembly de déploiement pour configurer le chemin du fichier war compressé du projet Java EE, puis réexécuter l'installation de maven.
Étapes à suivre pour utiliser l'assemblage de déploiement:
Faites un clic droit sur le projet Jave EE -> cliquez sur Propriétés -> cliquez sur Assemblage de déploiement
Cliquez sur le bouton Ajouter -> Cliquez sur Archives dans le système de fichiers -> Cliquez sur suivant -> Cliquez sur Ajouter -> Accédez au répertoire .m2 \ respository et recherchez le fichier de guerre généré -> Sélectionnez le fichier de guerre -> Cliquez sur le bouton Ouvrir -> Cliquez sur Appliquer -> OK
Clic droit sur le projet -> Cliquez sur Maven Install sous Run As
Cela va générer votre projet avec succès, sans aucune erreur de compilation.
J'espère que cela résout le problème sans JDK.
la source