Al utilizar la API com.sun.tools.attach en mi máquina de Windows, me sale el siguiente error al hacer una llamada aJava API Adjuntar: cambiar dinámicamente java.library.path
VirtualMachine.list()
java. lang.UnsatisfiedLinkError: no se adjunta en java.library.path
La razón es la falta de attach.dll. El archivo attach.dll se encuentra en $JRE/bin/
. Al iniciar mi programa Java con -Djava.library.path=[Directory to the attach.dll]
todo funciona sin salida de error.
Ahora, no quiero agregar todos los programas Java inicie este feo parámetro JVM. Por lo tanto, mis preguntas son:
Está mi máquina no configurados derecho y el
$JRE/bin/
deben estar en la ruta de la biblioteca de todos modos?En caso negativo, ¿cómo puedo agregar la ruta de forma dinámica?
System.setProperties("java.library.path",StringOfThePathToTheAttach.dll);
no funciona. La ruta de la biblioteca se cambia, pero el error aparece de todos modos. ¿Tiene algo que ver con el inicio de SecurityManager o JVM?
Después de cambiar la ruta de la biblioteca, se está utilizando un nuevo cargador de clases? –
@ joseph-ottinger: no, creo que debería? –