cómo hacer que la compatibilidad entre las dos partes de trabajo en diferentes versiones de jdk

StackOverflow https://stackoverflow.com/questions/3240822

Pregunta

Mi proyecto es construir en el JDK 1.4.2.Ahora que se va a interactuar con un tercero jar, construir en el JDK 1.6

Estoy recibiendo problema de compatibilidad, mientras que el uso de cliente de clases.Es posible resolverlo sin actualizar mi JDK 1.6 o la reconstrucción de terceros jar en la 1.4.2

¿Fue útil?

Solución

Usted puede ejecutar una clase compilada con JDK 1.6 anteriores JDK 1.4, porque usted tiene un java.lang.UnsupportedClassVersionError excepción.Esto es debido a que Java no es compatible, solo es compatible con versiones anteriores (ver especificación).

Con el fin de verificar que tengo instalado el JDK 1.4.2.19 y JDK 1.6.0.23 y escribió una aplicación de ejemplo:

public class HelloWorld {
    public static void main(String[] args) {
            System.out.println("Hello world!");
    }
}

Construido con JDK 1.6.0.23:

 ../1.6.0.23/bin/javac HelloWorld.java

Y lo ejecuta con JDK 1.4.2.19:

../1.4.2.19/bin/java HelloWorld

Salida:

Exception in thread "main" java.lang.UnsupportedClassVersionError: HelloWorld
(No compatible principales.versión menor 50.0)
      at java.lang.ClassLoader.defineClass0(Native Method)
      at java.lang.ClassLoader.defineClass(ClassLoader.java:539)
        ...


Solución:Usted puede tratar de reconstruir su aplicación de terceros con JDK 1.4, si no llamar a los métodos introducidos en 1.6 (y 1.5).

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top