eclipse apache - clase javac1.8 no encontrada




ant bin (9)

He instalado dos jdks: jdk 1.5 y jdk 1.8. Tengo el siguiente archivo de configuración Ant build.xml:

<target name="compileCustomSrc">
    <javac srcdir="src" destdir="build/classes" source="1.5" target="1.5" >
        <classpath>
            <fileset dir="C:/lib/">
                <include name="*.jar" />
            </fileset>
        </classpath>
    </javac>
</target>

Antes de instalar jdk1.8, Ant invocado desde Eclipse compiló todas las fuentes con éxito. Pero ahora, tengo un siguiente mensaje de error:

Class not found: javac1.8

Mi JAVA_HOME y JRE_HOME:

JAVA_HOME = C:\Program Files (x86)\Java\jdk1.5.0_16
JRE_HOME = C:\Program Files (x86)\Java\jre1.5.0_16

y establecer en Eclipse JRE en 1.5. ¿Configura Java 1.8 algunas configuraciones durante la instalación?


Answers

Lo intenté con Eclise y obtuve el mismo error. Clase no encontrada: javac1.8

Verifiqué la versión ANT en mi sistema

> ant -version

Apache Ant (TM) versión 1.9.6 compilada el 29 de junio de 2015

Cuando intenté ejecutar build.xml desde el símbolo del sistema, funcionó. Luego lo comprobé en el Eclipse, se refería a la versión anterior de ANT.

Simplemente edité la ruta ANT HOME en el Eclipse y funcionó desde aquí también. :)

A continuación se muestra la imagen desde donde se necesita editar la ruta ANT en el Eclipse.

  1. Haga clic derecho en el archivo build.xml
  2. Correr como
  3. Configuraciones de herramientas externas
  4. Seleccione la pestaña classpath

Ahora cambie la ruta de inicio de ANT desde aquí.


A veces, el problema al construir la guerra a través de ANT también está relacionado con la coincidencia de la versión java miss en los archivos build.properties, ya que build.XML intenta usar la versión java mencionada en la propiedad build.compiler

compruebe si la propiedad build.compiler es la misma que la versión java prevista.



Tuve el mismo problema. Hice que JAVA_HOME y JRE_HOME se configuraran correctamente. También tuve Ant> 1.9.

Lo que hice para arreglarlo es ir a Eclipse a Window -> Preferences. Expande Ant y selecciona Runtime. De forma predeterminada, se debe seleccionar la pestaña Classpath y en el lado derecho hay un botón llamado "Ant Home". Haga clic en este botón y compruebe que esté apuntando a su carpeta Ant.


Actualice Ant a la versión 1.9.x como Java 8 en versiones incompatibles con Ant menos tha 1.9 o después de comand -Dbuild.compiler = javac1.7, vea lo siguiente:

lanzamiento de la hormiga -Dbuild.compiler = javac1.7


Class not found: javac1.8

Se sabe que este error ocurre con versiones de Apache Ant inferiores a 1.9.0, que no son compatibles con Java 8. Si está utilizando una versión de Ant <1.9.0, debe actualizar a una versión 1.9.x.

Aquí está el informe de error relacionado: https://issues.apache.org/bugzilla/show_bug.cgi?id=53347

Por cierto, si solo quieres compilar con Java 8, pero no necesitas compilar ninguna sintaxis real de Java 8, entonces puedes pasar el siguiente argumento a javac como una solución alternativa , lo que te permitiría continuar usando una versión anterior de Ant :

-Dbuild.compiler=javac1.7

Actualización Ant a la versión 1.9.x como Java 8 en versiones incompatibles con Ant menos tha 1.9


Intenté todas las otras soluciones, pero ninguna funcionó. Finalmente encontré un enfoque que funcionó para mí en Eclipse:

  • Haga clic derecho en el nombre de la tarea de la hormiga, por ejemplo, "compileCustomSrc" en la ventana de la ant .
  • Elija Run As | External Tool Configurations Run As | External Tool Configurations
  • Luego, en la pestaña JRE , elija Separate JRE: Java SE7 o lo que sea que se Separate JRE: Java SE7 su java 7, luego Separate JRE: Java SE7 Apply y luego Run .

¡Su tarea ant será ejecutada, y se compilará correctamente!


Heres mi entrada:

  • Guardaría el token en DB, en caso de que necesite reiniciar el servidor, no quiere perder todos los tokens de sus usuarios. También podría guardarlo en la memoria para acelerar las solicitudes y solo buscarlo en la base de datos si no se encuentra en la memoria.

  • Aceptaría el token en el encabezado. Yo pondría el servicio de descanso en HTTPS para que la solicitud esté encriptada y no tenga que preocuparse por encriptar el token manualmente en la solicitud.

  • Probablemente me gustaría ver JAX-RS y ver qué características ofrece







java eclipse ant classnotfound