java - No se pudo ubicar tools.jar
(24)
Estoy construyendo un proyecto en Java.
Tengo este error:
Unable to locate tools.jar. Expected to find it in C:/Program Files/Java/jre6/lib/tools.jar
He instalado un JDK y la carpeta: C:/Program Files/Java/jre6/lib
está en mi sistema pero el archivo tools.jar
no está allí.
Instale el SDK de Java .
Agregue una variable de entorno del sistema llamada JAVA_HOME con el valor de la ubicación JDK.
Vaya a Panel de control / Sistema y Seguridad / Sistema. Configuración avanzada del sistema, Variables del entorno, Variables del sistema, Nuevo ... Ejemplo:
Nombre de la variable: JAVA_HOME
Valor de variable: C: / Archivos de programa / Java / jdk1.7.0_21Cierre / vuelva a abrir su ventana CMD para que la nueva variable entre en vigor antes de intentar volver a ejecutar el comando ant.
Asegúrese de que se agreguen las rutas% JAVA_HOME% y% JAVA_HOME% / bin a su variable PATH.
Todas las respuestas sobre la copia de tools.jar en la posición correcta es una mala idea en el mejor de los casos.
Asegúrese de que su IDE pueda encontrar estos frascos de la forma en que fue diseñado y previsto.
Asegúrese de que su classpath esté configurado correctamente y señale la versión correcta del JDK que ha instalado. Además, ¿estás usando Open JDK? He tenido este problema antes después de haber intentado pasar de JDK abierto a Suns JDK. This es un ejemplo de cómo ese problema podría solucionarse.
En caso de que esto siga siendo un problema para cualquiera, tengo un poco de aclaración sobre las respuestas anteriores. Me encontré con este mismo problema usando hormiga con solo un JDK instalado. Aunque, el instalador JDK me dio una estructura de directorios como esta:
Directory of C:/Program Files/Java
05/08/2012 09:43 AM <DIR> .
05/08/2012 09:43 AM <DIR> ..
05/08/2012 09:46 AM <DIR> jdk1.7.0_04
05/08/2012 09:19 AM <DIR> jre6
05/08/2012 09:44 AM <DIR> jre7
0 File(s) 0 bytes
y cuando corrí hormiga, se quejó de no encontrar tools.jar bajo el subdirectorio jre7. No fue hasta que set "JAVA_HOME=C:/Program Files/Java/jdk1.7.0_04"
que el error desapareció.
En la ventana de eclipse> preferencias> Java> JRE instalado, señalé el directorio al directorio jre en el archivo jdk 1.7 y trabaje para mí, por ejemplo, C: / Archivos de programa / Java / jdk1.7.0_71 / jre
Establezca su variable de entorno JAVA_HOME
para que apunte a C:/Program Files/Java/jdk1.7.0_02
.
No dedique demasiado tiempo a buscar tools.jar
. Si obtiene un error como ese, no se moleste.
Si ya tiene Java JDK 1.5, vaya a su carpeta lib
, y tools.jar
debería estar disponible allí. Cópielo y péguelo en su carpeta bin
, luego intente usar el comando ant -version
.
Deberías ver el resultado esperado.
No, de acuerdo con la estructura de tu directorio, has instalado un JRE, no un JDK. Hay una diferencia
C:/Program Files/Java/jre6/lib
^^^^
Debería ser algo así como:
C:/Program Files/Java/jdk1.6.0_24
Para mí, lo que funciona: descargué una versión anterior de Java 1.7
De hecho, configuré mi JAVA_HOME desde C: / archivos de programa X86 / Java PERO después de instalar la versión 1.7 tuve otra Java en los archivos de programa / Java. Y en este momento encontré las herramientas.jar aquí. Luego cambié para este nuevo camino y está funcionando
Puede enfrentar un problema similar en Ubuntu:
Embedded error: tools.jar not found: /usr/lib/jvm/java-7-openjdk-amd64/jre/../lib/tools.jar
El problema es con JAVA_HOME que no está configurado correctamente.
Entonces, en Ubuntu 14.04 x64 usando Java8:
sudo apt-get install openjdk-8-jdk openjdk-8-jre
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
Sí, ha descargado e instalado Java Runtime Environment (JRE) en lugar del Java Development Kit (JDK). Este último tiene las herramientas.jar, java.exe, javac.exe, etc.
Si estás en Linux, puedes resolver esto instalando java en el sistema:
sudo apt-get install openjdk-7-jdk openjdk-7-jre
Si ha instalado JDK 9.0.1, también tendrá este problema, ya que tools.jar ha quedado en desuso. Ver documento de migración .
También estaba enfrentando el mismo error. Esto se eliminó después de establecer la ruta Java_Home a C: / Program Files / Java / jdk1.8.0_121. Asegúrese de que el bin no esté incluido en la ruta y que no haya ninguna barra después de jdk1.8.0_121 después de haber definido% JAVA_HOME% / bin en la variable de ruta del sistema.
Tenía mi JDK_path ( C:/Program Files/Java/jdk1.7.0_79
) en mi JAVA_HOME
y también el JDK_path / bin en mi PATH
. Pero, aún así, mi hormiga estaba usando el JRE en lugar de JDK.
El problema era que tenía C:/ProgramData/Oracle/Java/javapath
antes de mi JDK_path en la variable PATH
. Simplemente moví mi JDK_path antes del oráculo y el problema fue resuelto.
Tuve el mismo problema en una máquina Linux. Al principio estaba bastante frustrado, porque he instalado tanto el JDK como el JRE. Estoy usando la versión 1.6, 1.7 y 1.8 simultáneamente, y he jugado mucho con las alternativas para tener todo configurado correctamente.
El problema fue bastante estúpido de resolver, pero contraintuitivo. Mientras usaba el JDK correcto, presté atención al camino de las herramientas de las que se quejaba maker maven: esperaba que fuera
$JAVA_HOME/../lib/tools.jar
La variable $JAVA_HOME
apuntaba directamente a mi carpeta jdk
( /usr/local/java
que también era la entrada $PATH
correcta y el enlace sym alternativo). En realidad, busca la carpeta lib
fuera del directorio java, porque:
$JAVA_HOME/../lib/tools.jar
resolverá a
/usr/local/lib/tools.jar
y esa no es una ubicación válida.
Para resolver esto, la variable $JAVA_HOME
debería apuntar a esta ubicación /usr/local/java/jre
(suponiendo que la ruta JDK es /usr/local/java
) - en realidad hay una carpeta jre
dentro del directorio de instalación de JDK, que viene con cada JDK. Esta nueva configuración hará que maven mire el directorio JRE, que es parte del JDK:
$JAVA_HOME/../lib/tools
que ahora resuelve
/usr/local/java/jre/../lib/tools.jar
y finalmente a
/usr/local/java/lib/tools.jar
que es donde realmente reside el tools.jar
.
Por lo tanto, incluso si usted está usando el JDK en lugar del JRE, el $ JAVA_HOME tiene que apuntar al JRE. Recuerde, la alternativa del sistema operativo aún debería referirse al JDK.
Tuve el mismo problema incluso después de instalar Java JDK y configurar JAVA_HOME
en la carpeta ../jdk1.6.0_45/bin
.
Ant aún está tratando de encontrar tools.jar
en la tools.jar
C:/Program Files/Java/jre6/lib
.
Lo arreglé agregando la variable de entorno JAVACMD
y establecí la ruta para java.exe
en la carpeta jdk
.
En mi caso fue C:/Program Files/Java/jdk1.6.0_45/bin/java.exe
Tuve el mismo problema y copié C:/Program Files/Java/jdk1.6.0_26/lib/tools.jar
en C:/Program Files/Java/jre6/lib/ext
maven-compiler-plugin use jdk, not jre, tools.jar está en C: / Program Files / Java / jdk1.6.0 / lib / tools.jar debe configurar el proyecto JRE System Libary con jdk, no jar. Esta es la solución más simple.
resolviendo este problema, simplemente copié el archivo tools.jar de C: / Program Files / Java / jre1.8.0_112 / lib a C: / Program Files / Java / jdk1.8.0_112 / lib para que tenga dos tools.jar archivos en lugar de uno y el problema desapareció.
se resolvió conmigo en windows os estableciendo la variable JAVA_HOME antes de ejecutar de la siguiente manera:
establecer JAVA_HOME = C: / Archivos de programa / Java / jdk1.8.0_111
ve a tu ruta jdk donde instalaste tu java
Por ejemplo, en mi PC JDK instalado en la siguiente ruta
"C: / Archivos de programa / Java / jdk1.7.0_17 /";
Después de ir a la carpeta lib, por ejemplo, "C: / Archivos de programa / Java / jdk1.7.0_17 / lib"
en el directorio lib hay un archivo tool.jar
Copie este archivo y páselo en el directorio de lib del directorio jre7, por ejemplo
"C: / Archivos de programa / Java / jre7 / lib"
Expected to find it in C:/Program Files/Java/jre6/lib/tools.jar
si ha instalado jdk, entonces
..Java/jdkx.xx
la carpeta debe existir allí así que párela y déle una ruta completa como
C:/Program Files/Java/jdk1.6.0/lib/tools.jar
- Haga clic derecho en su archivo ant
- Vaya a "Ejecutar como" y luego haga clic en "Ant Build ..."
- Ve a la pestaña "JRE"
- Seleccione un JDK y no un JRE