При использовании API com.sun.tools.attach на моей машине Windows я получаю следующую ошибку при обращении к
VirtualMachine.list()
java.lang.UnsatisfiedLinkError: нет вложения в java.library.path
Причина в том, что отсутствует файл attach.dll. Файл attach.dll находится в $JRE/bin/
. При запуске моей программы Java с -Djava.library.path=[Directory to the attach.dll]
все работает без вывода ошибок.
Теперь я не хочу, чтобы каждая программа Java запускала этот уродливый параметр JVM. Поэтому мои вопросы:
-
Является ли мой компьютер не настроен правильно, а
$JRE/bin/
должен быть в пути к библиотеке? -
Если нет, как я могу добавить путь динамически?
System.setProperties("java.library.path",StringOfThePathToTheAttach.dll);
не работает. Путь библиотеки изменен, но ошибка apperas в любом случае. Это что-то связано с запуском SecurityManager или JVM?