Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Java программирование > Общие вопросы по Java, Java SE, Kotlin
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 30.12.2016, 14:31   #1
DTX123
 
Регистрация: 30.12.2016
Сообщений: 9
По умолчанию Ошибка no lwjgl64 in java.library.path

Здравствуйте!

Я в Eclipse написал одну небольшую программу (с использованием lwjgl и slick2d). В самом эклипсе она запускается, работает и все такое (в общем как и должно быть). Когда я я экспортирую свою программу в Runnable JAR file и пытаюсь его запустить, то ничего не выходит! Я попробовал запустить через консоль командой (да и вообще все какие только в голову комбинации пришли испробовал):

Код:
java "-Djava.library.path=C:/Users/Никита/Desktop/lwjgl-2.9.3/native/windows" -jar lol.jar core.Game
У меня в эклипсе в параметре запуска стоит как раз -Djava.library.path=C:\Users\Никита\ Desktop\lwjgl-2.9.3\native\windows и там все работает, а тут нет! Как это исправить?
DTX123 вне форума Ответить с цитированием
Старый 30.12.2016, 14:32   #2
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,695
По умолчанию

Кавычки зачем поставили?
p51x вне форума Ответить с цитированием
Старый 30.12.2016, 14:37   #3
DTX123
 
Регистрация: 30.12.2016
Сообщений: 9
По умолчанию

Цитата:
Сообщение от p51x Посмотреть сообщение
Кавычки зачем поставили?
А, ой. Ну просто я уже сюда так скопировал, вот сейчас попробовал запустить вот так:

Код:
java -Djava.library.path=C:/Users/Никита/Desktop/lwjgl-2.9.3/native/windows -jar lol.jar core.Game
Но он все равно выдает такую ошибку. Вообще там в экспорте есть 3 разных вида "экспорта", где он (вроде как) либо закидывает в джарник все другие jar библиотеки, либо закидывает их содержимое, либо копирует их в соседнюю папку. Вот что мне лучше выбрать, чтобы просто другие люди на других компах могли просто запускать прогу не используя всякие командные строки и прочее? Так вообще реально сделать?
DTX123 вне форума Ответить с цитированием
Старый 30.12.2016, 14:42   #4
DTX123
 
Регистрация: 30.12.2016
Сообщений: 9
По умолчанию

Если выбираю экспорт "Extract required libraries into generated JAR", то при запуске выдает ошибку:
[spoiler][/spoiler]

Если "Package required libraries ingo generated JAR" выдает такую:
[spoiler][/spoiler]

Если "Copy required libraries into a sub-folder next to the generated JAR"
[spoiler][/spoiler]
DTX123 вне форума Ответить с цитированием
Старый 30.12.2016, 14:45   #5
DTX123
 
Регистрация: 30.12.2016
Сообщений: 9
По умолчанию

Я через Process Hacker смотрел какой командой eclipse запускает программу и пытался запустить такой же командой через bat файл, но ничего не вышло из-за этой ошибки!
DTX123 вне форума Ответить с цитированием
Старый 30.12.2016, 14:49   #6
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,695
По умолчанию

1. Если вы копируете либу в jar или рядом, то зачем вам задание java.library.path ?
2. Вы же видите, что в консоли ваше имя пользователя коверкается. Закиньте либ в папку с английским путем.

Цитата:
Я через Process Hacker смотрел какой командой eclipse запускает программу и пытался запустить такой же командой через bat файл, но ничего не вышло из-за этой ошибки!
А прочитать офф справку по командам для java слабо было? Может еще дизасмом ИДЕ поковырять? Вы в курсе, что ИДЕ может запускать совершенно по другому, например, для отладочных целей?
p51x вне форума Ответить с цитированием
Старый 30.12.2016, 15:02   #7
DTX123
 
Регистрация: 30.12.2016
Сообщений: 9
По умолчанию

Цитата:
Сообщение от p51x Посмотреть сообщение
1. Если вы копируете либу в jar или рядом, то зачем вам задание java.library.path ?
2. Вы же видите, что в консоли ваше имя пользователя коверкается. Закиньте либ в папку с английским путем.


А прочитать офф справку по командам для java слабо было? Может еще дизасмом ИДЕ поковырять? Вы в курсе, что ИДЕ может запускать совершенно по другому, например, для отладочных целей?
1. Я не знаю зачем мне задание этого пути, но судя по всему без этого указания ничего точно работать не будет.
2. Ой, я думал это просто специфическое отображение символов. Сейчас перенес в место с английским путем и прога начала запускаться через батник, спасибо!

Я правда очень много гуглил эту ошибку, день или два рылся на англоязычных форумах/не форумах вообще всему что может как-то помочь, много где нужно было указать вот именно этот путь.

А у меня теперь возник еще один вопрос: у меня есть этот lwjgl64.dll который со всем остальным добром лежит на компьютере, есть bat файл которым я все это добро запускают и есть сама моя прога в виде jar файла. Можно ли как-то сделать так, чтобы мне не приходилось запускать jar файл через батник? И можно ли сделать так, чтобы он эти файлы (lgwjgl64.dll и т.д.) брал не из того пути по моему компьютеру, а непосредственно из своего jar файла (т.е. эти dll файлы и так лежат в моем джарнике, но я не понимаю как к ним путь указать и как программу заставить при всем этом запускться без батника)?
DTX123 вне форума Ответить с цитированием
Старый 30.12.2016, 15:23   #8
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,695
По умолчанию

Цитата:
1. Я не знаю зачем мне задание этого пути, но судя по всему без этого указания ничего точно работать не будет.
Так потрудитесь прочитать справку. А то анекдот про формат Ц может перестать быть анекдотом.

Цитата:
2. Ой, я думал это просто специфическое отображение символов
Да вы еще и про наличие локалей не слышали, и про кодировки...

Цитата:
Я правда очень много гуглил эту ошибку, день или два рылся на англоязычных форумах/не форумах вообще всему что может как-то помочь, много где нужно было указать вот именно этот путь.
А всего лишь надо было справку прочитать
p51x вне форума Ответить с цитированием
Старый 30.12.2016, 15:40   #9
DTX123
 
Регистрация: 30.12.2016
Сообщений: 9
По умолчанию

Цитата:
Сообщение от p51x Посмотреть сообщение
А всего лишь надо было справку прочитать
А что на счет пути до dll внутри джарника и запуска без bat? Это можно как-то сделать?
DTX123 вне форума Ответить с цитированием
Старый 30.12.2016, 16:33   #10
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,695
По умолчанию

1. Хочется секаса на данном уровне знаний - идем в гугл по запросу "jni dll in jar" и наслаждаемся.
2. Батник вам уже не нужен java -jar для jar-файлов итак уже прописано в системе инсталятором java. Убедитесь, что в манифесте правильный мейн класс прописан.
p51x вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Library Path (Delphi XE8) stlcrash Общие вопросы Delphi 2 07.05.2016 12:51
VS 2012 альтернатива library path ZBEP Общие вопросы C/C++ 5 30.03.2013 17:36
Редактирование library path в компляторе gcc Crystallon Общие вопросы C/C++ 2 29.04.2012 14:08
XE2 Library Path Хамяг Общие вопросы Delphi 2 26.10.2011 17:36
Как вручную задать java.library.path в Linux-е(глобально и статически) Ivan_32 Общие вопросы по Java, Java SE, Kotlin 1 30.11.2010 15:36