5 votos

LSOpenURLsWithRole() con el error-10810

Descargado e instalado la aplicación de la corriente de aire, y cuando he lanzado nada sucede. En Terminal es la salida

$ open /opt/homebrew-cask/Caskroom/airstream/latest/AirStream.app
LSOpenURLsWithRole() failed with error -10810 for the file /opt/homebrew-cask/Caskroom/airstream/latest/AirStream.app.

Esto parece ser un trozo de Java/lanzador

$ file /opt/homebrew-cask/Caskroom/airstream/latest/AirStream.app/Contents/MacOS/JavaApplicationStub 
/opt/homebrew-cask/Caskroom/airstream/latest/AirStream.app/Contents/MacOS/JavaApplicationStub: Mach-O universal binary with 2 architectures
/opt/homebrew-cask/Caskroom/airstream/latest/AirStream.app/Contents/MacOS/JavaApplicationStub (for architecture i386):  Mach-O executable i386
/opt/homebrew-cask/Caskroom/airstream/latest/AirStream.app/Contents/MacOS/JavaApplicationStub (for architecture x86_64):    Mach-O 64-bit executable x86_64
Lees-MacBook-Pro:Casks hanxue$ oprn /opt/homebrew-cask/Caskroom/airstream/latest/AirStream.app/Contents/MacOS/JavaApplicationStub 

Cuando lo ejecuto manualmente

$ open /opt/homebrew-cask/Caskroom/airstream/latest/AirStream.app/Contents/MacOS/JavaApplicationStub 

Este es el resultado

/opt/homebrew-cask/Caskroom/airstream/latest/AirStream.app/Contents/MacOS/JavaApplicationStub ; exit;
$ /opt/homebrew-cask/Caskroom/airstream/latest/AirStream.app/Contents/MacOS/JavaApplicationStub ; exit;
JavaVM: Failed to load JVM: /Library/Java/JavaVirtualMachines/jdk1.8.0_05.jdk/Contents/Home/bundle/Libraries/libserver.dylib
JavaVM: Failed to load JVM: /Library/Java/JavaVirtualMachines/jdk1.8.0_05.jdk/Contents/Home/bundle/Libraries/libserver.dylib
JavaVM FATAL: Failed to load the jvm library.
[JavaAppLauncher Error] JNI_CreateJavaVM() failed, error: -1
logout

Java está instalado correctamente, y tengo otras aplicaciones Java funcionando sin problemas. ¿Cómo se resuelve este error?

8voto

hanxue Puntos 376

El error se produce porque la JVM error al lanzamiento de la aplicación Java en sí ha sido codificado para carga libserver.dylib. Este archivo debe existir para Java 1.6 y más, pero no para Java 1.7 y superiores.

Solución

Crear la estructura de directorios y un enlace simbólico desde libjvm.dylib a libserver.dylib

$ sudo mkdir -p /Library/Java/JavaVirtualMachines/jdk1.8.0_05.jdk/Contents/Home/bundle/Libraries/
$ sudo ln -s /Library/Java/JavaVirtualMachines/jdk1.8.0_05.jdk/Contents/Home/jre/lib/server/libjvm.dylib /Library/Java/JavaVirtualMachines/jdk1.8.0_05.jdk/Contents/Home/bundle/Libraries/libserver.dylib

Tenga en cuenta que esto es específico de JDK 1.8.0 5 de actualización. Las rutas de acceso deberá ser actualizado en tres lugares para futuras versiones.

Solución

Modificar el Java de código de la aplicación para que no busque libserver.dylib. Usted debe realmente no es difícil-código de la ruta de acceso de la JVM. En su lugar, utilice /usr/libexec/java_home si necesitas el camino de la JVM en OSX.

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