Java: как решить java.lang.UnsatisfiedLinkError: нет J3D в java.library.path
Когда я попытался запустить Java 3D PROGRAM, он дал мне следующую ошибку.
Exception in thread "AWT-EventQueue-0" java.lang.UnsatisfiedLinkError: no J3D in java.library.path
at java.lang.ClassLoader.loadLibrary(Unknown Source)
Я следил за этим веб-сайтом, чтобы решить эту ошибку
http://www.filsa.net/2008/07/17/eclipse-java3d-and-javalibrarypath/
В нем говорится, что после добавления файлов jar Кроме того, вам нужно поместить собственный путь, j3dcore-ogl.dll (j3dcore-ogl.so в Linux) в PATH.
У меня есть эти файлы DLL в папке j3d-1_5_2-windows-i586\bin\j3dcore-ogl.dll
Я добавил эту поддержку Eclipse следующим образом: Java Build Path --->Add Exernal Class Folder -> и путь до bin (именно там, где находятся эти dll-файлы)
После выполнения этого шага я получаю то же исключение. Вот так теперь выглядит мой путь сборки Eclipse IDE
Большое спасибо.
3 ответа
Я решил вопрос, очень просто:
Просто скопируйте и вставьте и объедините библиотеки J3D bin/ & lib/
папки в соответствующие bin/ & lib/
папки обоих jre/ & jdk/
Папки JVM, которые вы используете.
- Загрузите соответствующие двоичные файлы j3d Zip по адресу https://java3d.java.net/binary-builds.html. Для меня Win7 64bit Java VM (он же. Jdk & jre), я выбираю
j3d-1_5_2-windows-amd64.zip
, - Распакуйте загруженные файлы J3D Zip (
j3d-1_5_2-windows-amd64.zip
) чтобы получитьj3d-jre.zip
файл внутри. - Разархивируйте
j3d-jre.zip
чтобы получитьbin/ & lib/
папки. - Скопируйте и вставьте и объедините полученный
bin/ & lib/
папки в соответствующиеbin/ & lib/
папки моих папок JVM (иначе. обаjdk/ & jre/
папки).
Для других JVM это то же самое - копировать, вставлять и объединять библиотеку j3d zip bin/ & lib/
папки в соответствующие bin/ & lib/
папки JVM jre/ & jdk/
Скопируйте файл.dll в папку Windows/system32, затем нажмите (Windows + R) для запуска (Выполнить)
в поле введите regsvr32 "dll_name"
"dll_name" - это имя файла в папке bin библиотеки.
Можете ли вы попробовать выполнить regsvr32 "name_of_dll-file" из меню запуска? Вам нужно перезагрузить машину, чтобы это вступило в силу.
Это добавляет DLL в качестве библиотеки, к которой могут обращаться другие программы. Добавление его в путь сборки Eclipse не является правильным, поскольку оно будет доступно только вашей JVM.
Я решил проблему, скопировав j3dcore-ogl.dll в папку windows/system32