Что я делаю неправильно, пытаясь запустить эту тестовую команду Java для LWJGL?

Я пытаюсь использовать библиотеку lwjgl и начинаю новую установку Windows 7 с нуля.

Я загрузил последнюю версию JDK 6 с веб-сайта Oracle. После его установки я обнаружил, что такие команды, как «java» или «javac», не распознаются из командной строки Windows cmd. Итак, я отредактировал свою переменную пути и добавил к ней папку bin jdk.

Теперь java-команды работают.

Итак, я загружаю последнюю версию lwjgl, извлекаю ее и читаю инструкции по установке на их сайте:

Скачать дистрибутив Распаковать архив, содержимое файлов (в подпапках) должно включать (среди прочего):

lwjgl.dll lwjglaudio.dll lwjgl.jar lwjgl_util.jar lwjgl_test.jar
Проверьте LWJGL, открыв командную строку и перейдя в папку, в которую был извлечен архив. После навигации введите следующую команду: (все в одной строке, пробел перед каждым параметром)

java -cp .;res;jar\lwjgl.jar;jar\lwjgl_test.jar;jar\lwjgl_util.jar;jar\lwjgl_fmod3.jar;jar\lwjgl_devil.jar;jar\jinput.jar;-Djava.library.path= родной \ windows org.lwjgl.test.WindowCreationTest

Должно появиться окно, и вы должны увидеть следующий вывод:

Найдены режимы отображения 240, 320, WindowCreationTest Отображение создано Переход к 100, 100 Создано окно 600, 800, Игра

Итак, я извлек его и перешел к извлеченной папке в командной строке cmd.

Затем я выполнил тестовую команду, указанную выше, и получаю следующую ошибку:

C:\Users\Nestor\Downloads\lwjgl-2.6\lwjgl-2.6>java -cp .;res;jar\lwjgl.jar;jar\ lwjgl_test.jar;jar\lwjgl_util.jar;jar\lwjgl_fmod3.jar;jar\ lwjgl_devil.jar;jar\ji nput.jar;-Djava.library.path=native\windows org.lwjgl.test.WindowCreationTest
Доступны следующие клавиши: ESCAPE: выход из теста Клавиши со стрелками: перемещение окна, когда оно не полноэкранный режим L:
Список выбираемых режимов отображения 0-8:
Выбор режимов отображения F:
Переключение в полноэкранный режим SHIFT-F:
Переключение в полноэкранный режим с помощью цикла Display.destroy()/create() < strong>Исключение в потоке "main" java.lang.UnsatisfiedLinkError: нет lwjgl в java.libr ary.path в java.lang.ClassLoader.loadLibrary(ClassLoader.java:1734) в java.lang.Runtime.loadLibrary0 (Runtime.java:823) в java.lang.System.loadLibrary(System.java:1028) в org.lwjgl.Sys$1.run(Sys.java:73) в java.security.AccessController.doPrivileged(собственный метод) на org.lwjgl.Sys.doLoa dLibrary(Sys.java:66) в org.lwjgl.Sys.loadLibrary(Sys.java:82) в org.lwjgl.Sys.(Sys.java:99) в org.lwjgl.opengl.Display.(Display.java :130) в org.lwjgl.test.WindowCreationTest.initialize(WindowCreationTest.java: 82) в org.lwjgl.test.WindowCreationTest.main(WindowCreationTest.java:286)

C:\Пользователи\Нестор\Загрузки\lwjgl-2.6\lwjgl-2.6>

Почему я получаю эту ошибку? Я не понимаю, почему должны быть ошибки связывания. В команде, которую я пытался выполнить, четко указан путь к тем родным dll, которые ей нужны:

C:\Users\Nestor\Downloads\lwjgl-2.6\lwjgl-2.6>java -cp .;res;jar\lwjgl.jar;jar\ lwjgl_test.jar;jar\lwjgl_util.jar;jar\lwjgl_fmod3.jar;jar\ lwjgl_devil.jar;jar\ji nput.jar;-Djava.library.path=native\windows org.lwjgl.test.WindowCreationTest

Я подтвердил, что относительный путь "native\windows" содержит следующие зависимости:

C:\Users\Nestor\Downloads\lwjgl-2.6\lwjgl-2.6\native\windows>dir
Том на диске C не имеет метки.
Серийный номер тома 2061-75F6

Каталог C:\Users\Nestor\Downloads\lwjgl-2.6\lwjgl-2.6\native\windows

24.11.2010 00:35 .
24.11.2010 00:35 ..
18.10.2010 20:44 31 232 jinput-dx8.dll
18.10.2010 20:44 65 024 jinput-dx8_64.dll
18.10.2010 20:44 29 696 jinput-raw.dll
18.10.2010 20:44 62 464 jinput-raw_64.dll
10 /18/2010 20:44 197 120 lwjgl.dll
18/10/2010 20:44 305 664 lwjgl64.dll
18/10/2010 20:44 56 832 OpenAL32.dll
18/10 /2010 20:44 157 184 OpenAL64.dll
8 файлов 905 216 байт
2 каталога 155 163 058 176 байт свободно

Может ли кто-нибудь помочь указать, что я делаю неправильно? Может ли кто-нибудь воспроизвести это, загрузив библиотеку LWJGL и попытавшись запустить тестовую команду, указанную в инструкциях по установке?


person KingNestor    schedule 25.11.2010    source источник


Ответы (3)


Похоже, у вас нет пробела между аргументом пути к классам (-cp jar1.jar;jar2.jar) и настройкой системного свойства (-D..).

Например. ваш путь к классам выглядит так-cp .;res;jar\lwjgl.jar;jar\lwjgl_test.jar;jar\lwr...;-Djava.library.path=native\windows. Таким образом, java будет интерпретировать вашу настройку свойства аргумента пути к собственной библиотеке как путь к классам!

Просто добавьте пробел между этими аргументами, и все готово. Это исправленная команда (также протестирована в Windows 7):

java -cp jar\lwjgl.jar;jar\lwjgl_test.jar;jar\lwjgl_util.jar -Djava.library.path=native\windows org.lwjgl.test.WindowCreationTest

Обратите внимание, что я удалил неиспользуемые jar-файлы из пути к классам, поскольку вы хотите запустить только пример WindowCreationTest.

person dacwe    schedule 30.11.2010
comment
Спасибо друг! Я очень ценю это. - person KingNestor; 05.12.2010

Проверьте еще раз этот каталог

C:\Users\Nestor\Downloads\lwjgl-2.6\lwjgl-2.6\native\windows

существует и содержит lwjgl.dll и lwjglaudio.dll

Я считаю, что что-то не так с вашей установкой, т. е. каталог не существует или файлов там нет.

person AlexR    schedule 25.11.2010

Просто бросаю это туда, потому что у меня были некоторые проблемы, связанные с этим. Перейдите в папку Java/JRE/BIN. Щелкните правой кнопкой мыши Java и перейдите в свойства. В разделе «Уровень привилегий» установите флажок «Запуск от имени администратора».

person user489041    schedule 29.11.2010