Construcción de hormigas: incapaz de localizar tools.jar. Se espera encontrarlo en C: \ Archivos de programa \ Java \ jre7 \ lib \ tools.jar

Sé que esta pregunta es popular, pero ninguna de las soluciones puede ayudarme. He usado esto , esto , esto y esta soluciones, pero nadie me ayuda.

Quiero implementar uiautomator pruebas y la necesidad de construir mi build.xml con hormiga, pero obtener este error extraño.

Yo uso Windows 8.1

Mi variable de sistema JAVA_HOME se establece en c: \ programs files \ java \ jdk1.7.0_51 y en los archivos c: \ programs (x86) \ java \ jdk1.7.0_51

Mi variable de sistema PATH también se establece en% JAVA_HOME% / bin, mi% ANT_HOME% se establece en c: \ apache-ant.

Pero cuando ejecuto hormigas construir en la aplicación android derictory obtener la

unable to locate tools.jar. Expected find it in C:\Program Files\Java\jre7\lib\tools.jar BUILD FAILED Perhaps JAVA_HOME does not point to the JDK 

Pero mi JAVA_HOME puntos a la derecha JDK! Me confundí con esto. También reconstruyo mi construcción varias veces, tengo lo mismo.

Estará contento si alguien me ayuda.

Yo también tuve este problema y lo resolví estableciendo variables como esta:

 [1] ANT_HOME - C:\apache-ant-1.9.3 [2] JAVA_HOME - C:\Program Files\Java\jdk1.7.0_21 [3] PATH - D:\Android_Development\android_sdk\platform-tools\;%ANT_HOME%\bin;%JAVA_HOME%\bin;D:\Android_Development\android_sdk\tools 

Nota: Establezca todos estos en variables de sistema no en variables de usuario.

Esto solucionó mi problema.

Espero eso ayude.

Para recuperar estos problemas, sólo puede copiar el archivo tools.jar desde "C: \ ProgramFiles \ Java \ jdk1.7.0 \ lib" directamente en "C: \ Archivos de programa \ Java \ jre7 \ lib \". .

¡Funciona!..

Resolví problema con la configuración de% JAVA_HOME% para iniciar el PATH. Funcionó para mí cuando lo establecí exactamente al principio.

En lo que respecta a tools.jar , experimenté lo siguiente: al descargar ant, vino con java abierto 7. Sin embargo, el sistema que había descargado, utiliza Java 8 u 40 (la versión de Oracle ). Por lo tanto, cuando señalé la lib / jre a través de un enlace de software en linux, al lugar de las herramientas.jar , me dieron el error, que ahora la versión / subversión no era coincidente. Esto porque la hormiga estaba utilizando la versión 7, y el tools.jar de Oracle era ahora la versión 8.

La solución fue usar la ayuda anterior (con la configuración de JAVA_PATH para convertirme en mi versión Oracle 8u40 de Java), de tal forma que tanto el compilador como el archivo tools.jar tengan la misma versión.

El escenario en que estoy, por lo tanto, tiene el jdk descargado como vino de Oracle en mi directorio /home/david/Desktop/Android5.0/jdk1.8.0u40 – los paquetes de Android como llegaron en / home / david / Desktop / Android5 .0 directorio, mi espacio de trabajo Eclipse en / home / david / workspace – y ahora espero ser mejor para ir.

El ant-archivo build.xml se coloca en mi directorio / home / david / workspace – y se ve así:

 <project> <target name="clean"> <delete dir="build"/> </target> <target name="compile"> <mkdir dir="build/classes"/> <javac srcdir="src" destdir="build/classes"/> </target> <target name="jar" depends="compile"> <mkdir dir="build/jar"/> <jar destfile="build/jar/HelloWorld.jar" basedir="build/classes"> <manifest> <attribute name="Main-Class" value="oata.HelloWorld"/> </manifest> </jar> </target> <target name="run" depends="jar"> <java jar="build/jar/HelloWorld.jar" fork="true"/> </target> </project> 

El archivo java en esta pregunta – HelloWorld.java, se está poniendo en el directorio / home / david / workspace / build / src / oata – y ahora compila a su destino se puede ver más arriba, ya partir de ahí el archivo jar se está Construido también.

Es cierto – hay métodos en los que uno puede hacer que una versión de Java pretenda ser otra – pero no quería ir allí, porque estoy configurando un entorno de compilación donde puedo hacer extractos del repositorio, construir y almacenar El código construido en un sitio de descarga.

El ejemplo anterior de build.xml se modifica ligeramente del siguiente tutorial de Ant para la compilación: https://ant.apache.org/manual/tutorial-HelloWorldWithAnt.html

Chicos – espero que funcione para usted también, porque hormiga es realmente una de las mejores maneras de construir, como se puede invocar desde la línea de comandos, puede hacer que recoja primero los archivos del repositorio (GitHub o BitBucket, etc.) y Entonces usted puede FTP el resultado compilado a su sitio de descarga preferido para los desarrolladores, puede zip junto el código de tal manera que tiene la versión lista y comprimido en el peor de los casos …

Copie el archivo tools.jar de C: \ Archivos de programa \ Java \ jdk1.8.0_91 \ lib y pate a C: \ Archivos de programa \ Java \ jdk1.8.0_91 \ bin. Funcionó bien para mí en mi caso

  1. Establecer en el sistema -variables:

    • JAVA_HOME: C: \ Archivos de programa \ Java \ jdkVERSION
    • ANT_HOME: C: \ Archivos de programa \ apache-ant-VERSION
    • CAMINO:% JAVA_HOME% \ bin;% ANT_HOME% \ bin; … (al principio de la variable PATH)
  2. Eliminar todo lo relacionado con Java / Ant de las variables de usuario

  3. Reinicie la línea de comandos (!) Para recibir las nuevas Variables en el contexto de la instancia en ejecución.

Compruebe el valor de la variable JAVA_HOME y PATH , en algún momento podría estar poniendo

 JAVA_HOME="C:\Program Files\Java\jdk1.8.0\bin" . 

en lugar de

 JAVA_HOME="C:\Program Files\Java\jdk1.8.0" . 

Y PATH=%JAVA_HOME%\bin;%PATH% .

Sólo hace eco de la variable PATH en CLI.

 echo %PATH%. 
  • Tamaño de pantalla en Samsung Tablet 10.1
  • Cuando ejecuto mi código androide UIAutomator, muestra error
  • ¿Cómo desplazarse por la pantalla en la prueba de espresso android? Necesito validar el texto presente en la pantalla
  • Cómo rellenar la contraseña EditText con Android uiautomator?
  • Proporcionando retraso entre eventos en UiAutomator Android
  • Compruebe si se muestra un identificador de recurso de la vista en matriz y haga clic en él (Android-Espresso)
  • Cómo obtener una instancia de android.app.UiAutomation
  • Android Espresso Ui Test verifica el texto de la etiqueta de ActionPage
  • Cómo inyectar el evento de clic con Android UiAutomation.injectInputEvent
  • UiAutomator falla en el dispositivo 4.1.2
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.