4 votos

Instalar Java 7 OpenJDK de 32 bits

Motivación

Tengo una aplicación java propietaria que solía funcionar bajo Snow Leopard pero que falla bajo Lion con el siguiente backtrace:

Exception in thread "AWT-EventQueue-0" java.lang.IllegalArgumentException: Invalid display mode
    at apple.awt.CGraphicsDevice.setDisplayMode(CGraphicsDevice.java:472)
    at apple.awt.CGraphicsDevice.setFullScreenWindowSynchronized(CGraphicsDevice.java:363)
    at apple.awt.CGraphicsDevice.access$000(CGraphicsDevice.java:25)
    at apple.awt.CGraphicsDevice$1SetFullScreenAction.run(CGraphicsDevice.java:326)
    at apple.awt.CGraphicsDevice.setFullScreenWindow(CGraphicsDevice.java:331)

La llamada a setFullScreenWindow sólo pasa null es decir, intenta restaurar de pantalla completa a modo de ventana. El error sólo se produce cuando se conecta un proyector y, por tanto, la resolución de la pantalla se ajusta a 1024x768. A mí me parece que se trata de un error en la VM de Java.

Mirando el código me parece que OpenJDK 7 podría haber solucionado este problema. Así que quiero probarlo.

Enfoque fallido

Sin embargo, incluso después de descargar Java SE 7u7 de Oracle No puedo utilizarla para ejecutar la aplicación, ya que la aplicación utiliza código nativo de 32 bits, que esta JVM no soporta:

> /Library/Java/JavaVirtualMachines/jdk1.7.0_07.j/Contents/Home/bin/java -d32 -version
Error: This Java instance does not support a 32-bit JVM.
Please install the desired version.

Pregunta central

Así que mi pregunta principal es la siguiente: ¿es posible instalar un 32 bits construcción de una versión reciente de OpenJDK 7 en Mac OS X Lion? Preferiblemente como un paquete precompilado, pero si eso no está disponible, entonces una instrucción bien escrita de cómo compilarlo yo mismo serviría también para mi propósito.

2voto

MvG Puntos 259

Parece que he encontrado una fuente de OpenJDK precompilado:
http://code.google.com/p/openjdk-osx-build/
Las compilaciones de OpenJDK 7 que hay son universales, y efectivamente se ejecutan en modo de 32 bits. La última versión es la 7u6, que no es tan reciente como la 7u7 disponible en Oracle, pero debería ser lo suficientemente reciente para mis necesidades.

Por desgracia, mi problema original persiste, así que puede que tenga que compilar mi JVM yo mismo después de todo. He encontrado que hay un repositorio jdk7u-osx en el Repositorios mercuriales de OpenJDK y su Archivo README-builds proporciona instrucciones razonables sobre cómo construir cosas. La parte sobre las descargas de fuentes parece especialmente importante. Todavía tengo algunos problemas, pero parecen ser errores en el proceso de construcción o similares, así que los trataré con el Lista de correo macosx-port-dev .

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X