Pregunta

Entiendo que puedes configurar la ruta de la biblioteca Java con una opción (-Djava.library.path=/path/to/libs) antes de ejecutar el programa, pero ¿hay algún lugar en el sistema donde Java busque si no lo configura manualmente?

¿Fue útil?

Solución

Su valor predeterminado depende del sistema operativo:

  • En Windows, se asigna a PATH
  • En Linux, se asigna a LD_LIBRARY_PATH
  • En OS X, se asigna a DYLD_LIBRARY_PATH

Otros consejos

Sin embargo, Matt Ball no es totalmente correcta.

En mi caja de Linux, mi ruta de la biblioteca Java es

/usr/lib64/icedtea6/jre/lib/amd64/server:/usr/lib64/icedtea6/jre/lib/amd6ib/amd64:/usr/lib64:/lib64:/lib:/usr/lib

Mientras mi LD_LIBRARY_PATH es /usr/local/lib64.

Para Java 8, esto difiere según el sistema operativo.Este es el comportamiento que observé:

  • Windows 10/Oracle JDK 8: java.library.path=%PATH%;.
  • macOS El Capitán/Oracle JDK 8: java.library.path=$JAVA_LIBRARY_PATH:~/Library/Java/Extensions:/Library/Java/Extensions:/Network/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java:.. DYLD_LIBRARY_PATH y LD_LIBRARY_PATH Se ignoran las variables.Además, ambas variables se eliminan del entorno de las aplicaciones Java.
  • Linux CentOS 7/JDK abierto 8: java.library.path=$LD_LIBRARY_PATH:/usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top