Tengo mi JAVA_HOME configurado en:
C:\Program Files (x86)\Java\jdk1.6.0_18
Después de ejecutar maven install
, recibo este mensaje de Eclipse :
Razón:
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.
Estoy seguro de que esta es la parte complicada
Asegúrese de estar utilizando JDK 1.4 o superior y no un JRE
Cuando ejecuto la configuración, se establece en JRE6. ¿Cómo lo cambio a JDK 1.6 que ya he instalado?
Incluso intenté modificar el complemento:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.0.2</version>
<configuration>
<source>1.6</source>
<target>1.6</target>
<executable>C:\Program Files (x86)\Java\jdk1.6.0_18\bin</executable>
</configuration>
</plugin>
Aún así, obtengo el mismo error.
Utilizo el complemento Eclipse Maven. ¿Cómo puedo cambiar de JRE a JDK en Eclipse?
set
comandos para asegurarse de que JAVA_HOME esté configurado en lo que cree que es?java -version .6.0_18-ea" time Environment (build 1.6.0_18-ea-b04) ) Client VM (build 16.0-b11, mixed mode, sharing)
java -version
está ejecutando; podría ser la instalación de JRE o JDK.javac -version
sería un poco más útil. Sin embargo, incluso entonces, si PATH es correcto y JAVA_HOME es incorrecto, estos se mostrarán como cabría esperar.Respuestas:
Puede intentar actualizar el JDK que usa Eclipse, de la siguiente manera:
Agregue y configure el JRE en el menú Ventana → Preferencias ... → Java → JRE instalados :
Si este no es el caso, es posible que los corchetes y los espacios en la ruta JAVA_HOME estén causando problemas. Intente copiar su JDK en una ubicación diferente y actualizar su JAVA_HOME.
fuente
El archivo eclipse.ini necesita que el
vm
argumento apunte a su ubicación JDK.Edite el
eclipse.ini
archivo para que apunte a su casa JDK, algo como sigue:Esto asegura que Eclipse se ejecutará desde el JDK y no desde cualquier JRE predeterminado en su máquina.
fuente
Intenta:
Vaya a
Preferences/Java/Installed JREs
y agregue uno para la ubicación"C:\Program Files\Java\jdk1.6.0_27\jre
o algo así.Quita el de
C:\Program Files\Java\jre6
Como puede ver, la ruta
C:\Program Files\Java\jre6\..\lib\tools.jar
solo tiene sentido si la primera parte (hasta la / ..) se reemplaza porC:\Program Files\Java\jdk1.6.0_27\jre
.fuente
Establecer fork en verdadero resolvió el problema para mí.
fuente
¡Tuve exactamente el mismo problema! Había estado buscando y buscando durante días porque todo el balbuceo sobre "poner -vm c: \ program files \ java \ jdkxxxxx \ bin" en el inicio como argumento para un atajo no ayudó en absoluto .
(¿Sueno frustrado? Créame, ¡eso es quedarse corto! ¡Estoy simplemente furioso porque perdí una semana tratando de hacer que Maven sea confiable!)
Tuve un comportamiento muy impredecible. A veces se compilaba y otras no. Si hiciera un
maven clean
, no pudo encontrar el compilador y falló. Si luego cambié algo en la ruta de construcción, ¡¡de repente funcionó de nuevo !!Hasta que fui al menú Ventana → Preferencias → Java → JRE instalados . Agregué un nuevo JRE usando la ubicación del JDK y luego eliminé el JRE. ¡De repente, Maven se quedó estable!
¿Quizás valga la pena poner esto en letras con un tamaño de fuente de 30 aproximadamente en el manual de Apache?
Con el debido respeto, ¡esto es simplemente indignante para la comunidad Java! ¡No puedo imaginar cuántos días perdieron todas estas personas tratando de resolver sus problemas de este tipo! No puedo imaginar que esto se publique como una versión final. Personalmente, ni siquiera me atrevería a lanzar algo así con el nombre de software beta ...
Saludos cordiales de cualquier manera ... Después de una semana de manipulación, finalmente puedo comenzar a desarrollarme. Espero que mi jefe no se entere de esto. Me costó un gran esfuerzo convencerlo de que no usara .NET y ya lo siento.
fuente
Tengo el mismo problema al usar Ejecutar como -> Instalación de Maven en Eclipse. JAVA_HOME y eclipse.ini estaban bien y apuntaban a mi último JDK. Pero m2clipse usó JRE. ¡Usar mvn install fuera de Eclipse funcionó bien!
En mi caso, resolví el problema de la siguiente manera:
Creo que Maven no tiene en cuenta cuál está activo ...
fuente
Basado en la compilación de fuentes usando un JDK diferente , tendrá que establecer la bifurcación en verdadero en su archivo pom.xml .
fuente
Acabo de instalar Maven 3.0.4, ajuste
M2_HOME
,M2
yJAVA_HOME
en consecuencia. Luego ejecuté los siguientes comandos:mvn archetype:generate....
mvn compile
Me fallado mensaje tal como:
maven unable to locate javac compiler
.En mi computadora, tengo JRE instalado por defecto en C: \ archivos de programa \ java \ jre.1.6 . Y tengo el otro C: \ java \ jdk1.6 y lo
JAVA_HOME
configuro en este C: \ java \ jdk1.6 .No vi nada malo en mi entorno. Después de buscar, decidí investigar
mvn.bat
, hice eco de%JAVA_HOME%
cada paso y se mostró correctamente comoC:\java\jdk1.6
, pero cuando ejecuté el comandomvn --version
, mostró el inicio de Java: C: \ program files \ java \ jre1.1.6 .Finalmente, descubrí que solo necesito configurar
-Djava.home=c:\java\jdk1.6
como en el comando a continuación, y funcionando bien ahora:%MAVEN_JAVA_EXE% %MAVEN_OPTS% -classpath %CLASSWORLDS_JAR% "-Dclassworlds.conf=%M2_HOME%\bin\m2.conf" "-Djava.home=%JAVA_HOME%" "-Dmaven.home=%M2_HOME%" %CLASSWORLDS_LAUNCHER% %MAVEN_CMD_LINE_ARGS%
Nota: Esto es para
mvn
la línea de comandos y no para Eclipse.fuente
Resolví el problema cambiando la ubicación del JRE instalado al directorio presente en el propio JDK. Establecer el valor adecuado de
JAVA_HOME
la variable entorno no resolvió el problema.En mi caso, hay dos directorios
C:\Program Files\Java\jdk1.7.0_03 --> For JDK
C:\Program Files\Java\jre7 --> For JRE
Inicialmente lo configuré
C:\Program Files\Java\jre7
como JRE instalado en Eclipse y recibía el mismo error en el caso de Maven (Ant funcionaba bien).Al cambiar el JRE instalado a JRE
C:\Program Files\Java\jdk1.7.0_03\jre7
instalado en Eclipse, el problema se resuelve.fuente
No olvide que si está ejecutando su proyecto desde una configuración particular de Eclipse, debe cambiar el tiempo de ejecución de Java dentro de 'Ejecutar configuraciones' -> 'Su configuración de maven' -> 'pestaña JRE' después de agregar el JDK correcto a sus preferencias de Eclipse.
fuente
Parece que Maven está usando el JRE, no el JDK. ¿Quizás instaló Maven antes de instalar el JDK?
Compruebe los archivos de configuración . Hay tres en total, sistema, usuario y proyecto. Lo más probable es que esté en la configuración de instalación ($ M2_HOME / conf / settings.xml) o, posiblemente, en la configuración por usuario ($ {user.dir} /. M2 / settings.xml).
fuente
Solo configuración de Eclipse
Realice los siguientes pasos:
Haga clic derecho en Propiedades del proyecto Eclipse
Ruta de compilación Java → Bibliotecas
Seleccione Biblioteca del sistema JRE → Haga clic en el Editbotón
Haga clic en el botón "JRE instalados ..."
Edite JRE como: Establecer JRE Home = JAVA_HOME o JAVA_HOME \ jre
Captura de pantalla:
fuente
Haga clic derecho en el menú Proyecto → Propiedades → Ruta de compilación de Java .
Seleccione la ruta del sistema JRE → Editar . Seleccione el JRE predeterminado del espacio de trabajo y apúntelo a JDK> 1.4.
fuente
Utilice el menú Ventana → Preferencias → Java → JRE instalados → Entornos de ejecución -> haga clic en la casilla de verificación del lado derecho.
fuente
La solucion es simple. A veces, Eclipse Windows → Preferencias → Java → JRE instalados apuntando a
C:\Program files\Java\jre
.Cuando lo cambié a
C:\Program files\Java\JDK 6.0\jre
está trabajado al 100%.fuente
Como lo mencionaron varios otros, la Ventana de Eclipse → Preferencias ... → Java → Los JRE instalados deben apuntar al JDK que instaló, no al JRE. Solo entonces puede encontrar la
../lib
carpeta mencionada en el mensaje de error.Incluso con esto, el problema puede volver a aparecer. Mi salida en Eclipse v4.2 (Juno) es hacer un menú Maven → Actualizar proyecto ... luego de lo cual el problema desaparece.
Sospecho que la razón es que algunos de los archivos generados por Eclipse (.classpath, .project, .preferences) están en Subversion para el proyecto en el que tengo estos problemas. Por lo tanto, una actualización de SVN presenta el problema y una actualización de configuración de Maven en Eclipse lo resuelve nuevamente.
Solución real: omita los archivos .files generados por Eclipse del control de versiones y deje que el complemento Maven Eclipse maneje la configuración del proyecto. (Se aceptan sugerencias / consejos adicionales) .
fuente
En mi caso, en el menú de Eclipse Ejecutar → Configuraciones de depuración .
En la pestaña JRE, la selección del JDK en lugar del JRE resolvió el problema.
fuente
Tuve el mismo problema en Amazon Linux. Resulta que tuve que instalar la versión de desarrollador del JDK:
fuente
Vaya al menú de Eclipse Ventana → Preferencias ... → Java → Los JRE instalados deben apuntar al JDK que instaló, no al JRE.
fuente
También puede asegurarse de que Eclipse tenga todos los cambios actualizados. Para hacer esto, haga clic derecho en su proyecto y luego presione el elemento de menú "Actualizar".
fuente
Muchas otras respuestas le dicen que apunte su Eclipse a un JDK en lugar de un JRE.
Aquí hay otra respuesta con pasos más específicos / claros [de los que he visto en cualquier respuesta aquí] sobre cómo hacer eso: ¿Cómo se instala JDK?
Eso es lo que me solucionó para este mismo problema.
fuente
Asegúrese de que "-vm" en su eclipse.ini esté en dos líneas separadas, es decir:
fuente
Supongo que la ubicación del compilador está definida en un POM para que el complemento del compilador esté en la ubicación de JRE que se muestra, en lugar de la ubicación de JDK a la que apunta JAVA_HOME.
fuente
<groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>2.0.2</version> <configuration> <source>1.6</source> <target>1.6</target>
Debe indicar
JAVA_HOME
enmvn.ini
(está en la carpeta Maven/bin
) y su problema desaparecerá.fuente
Si configura JAVA_HOME y el problema persiste, intente lo siguiente.
(Tuve el mismo problema, en una PC recién instalada).
Suponiendo que está utilizando Eclipse.
Eso es todo. Su proyecto no sufrirá tales problemas.
fuente
Tuve el mismo error, debido a la versión JUnit . Tenía tres 3.8.1 y he cambiado a 4.8.1.
Entonces la solución es:
Tienes que ir al POM y asegurarte de que tu dependencia se vea así
fuente
Cambié la configuración de maven-compiler-plugin para agregar
executable
yfork
con valor verdadero.Funcionó para mí.
fuente
Hazlo
Echo %JAVA_HOME%
y luegomvn --version
.La ruta de JRE debe ser la misma ... luego vaya al menú Ventana → Preferencias → Java → La ubicación de JRE instalado debe ser la misma que la que
Java_Home
se muestra.fuente
Vaya al cuadro de diálogo Propiedades y haga clic derecho en el proyecto.
En Recursos vinculados , agregue una nueva ruta llamada JAVA_HOME e ingrese su ubicación JDK, algo así como "C: \ Archivos de programa \ Java \ jdk1.8.0_73".
¡¡Eso es todo!!
fuente
La solución a este problema es muy simple ...
Si no tiene el archivo de compilación de Ant, generelo. En Eclipse puede crear fácilmente un archivo Ant .
Consulte el enlace para crear un archivo de compilación Ant [ http://www.codejava.net/ides/eclipse/how-to-create-ant-build-file-for-existing-java-project-in-eclipse] .
Ahora siga los pasos dados:
1) Agregue su archivo de compilación Ant en la vista Ant que está en la ventana de visualización.
2) haga clic derecho en su archivo de compilación Ant y seleccione Ejecutar como y la segunda opción en esa "Compilación Ant".
3) Ahora se abrirá un cuadro de diálogo con varias opciones y pestañas.
4) Seleccione la pestaña JRE .
5) Verá tres botones de radio y tendrán JRE o JDK seleccionado como una opción.
6) Mire cuidadosamente si las opciones del botón de radio tienen JRE como seleccionado y luego cámbielo a JDK .
7) Haga clic en Aplicar.
Eso es...!!!
fuente