Eclipse создать исполняемый файл Java с внешними библиотеками - PullRequest
0 голосов
/ 29 сентября 2011

Я видел эту тему на этом форуме, но мне нужно более простое объяснение того, как это сделать.

Я создал программу на Java с некоторыми внешними библиотеками (LWJGL и Slick).

Так вот, что я сделал, и моя программа все равно не запустится, скажите мне, где я сделал не так.

У меня Eclipse 3.7.1

  1. Мой проект открыт в Eclipse и хорошо работает в Eclipse
  2. Я нажимаю Файл -> Экспорт
  3. Я выбираю Java -> Запускаемый файл JAR
  4. Здесь я неНе знаю, что выбрать в конфигурации запуска, когда я нажимаю раскрывающийся список, у меня появляется возможность выбрать свой основной класс, и я делаю это.
  5. Я выбираю пункт назначения экспорта
  6. Я выбираю параметр "Упаковать необходимые библиотеки в сгенерированный JAR "в разделе Обработка библиотек
  7. Я не знаю, что такое сценарий ANT, поэтому я не использую его
  8. Я нажимаю Готово
  9. Я копирую свойпапка с изображениями в том же месте, что и сгенерированный JAR-файл
  10. Я пытаюсь запустить JAR-файл, иногдаng загружается в фоновом режиме, но ничего не происходит, никакое окно не появляется, ничего.
  11. Я проверяю диспетчер задач в Windows и вижу, что javaw.exe работает

Что я сделалпропустите?

Моя программа использует изображения для графики, например:

image = new Image("images/filname.png");

Интересно, нужно ли мне изменить пути перед экспортом или способ их загрузки?

Спасибо!

Ответы [ 3 ]

0 голосов
/ 23 мая 2012

У меня была такая же проблема, и я смог ее исправить. Все, что я сделал, это скопировал папку данных (которая содержит мои ресурсы) в файл * .jar. Вы можете сделать это, например, с WinRAR.

0 голосов
/ 29 июня 2012

Прочтите это , чтобы узнать, как использовать JarSplice для экспорта вашего проекта Eclipse в исполняемый jar-файл. Что касается изображений, вы можете поместить их в тот же каталог, что и файл класса (в банке), а затем написать

SampleClass.class.getResourceAsStream("image.png")
, чтобы получить InputStream изображения. Тогда вы можете загрузить его так, как вам нравится.
0 голосов
/ 29 сентября 2011

Если вы хотите получить вещи из jar-файла, вам нужно иметь их в своем classpath и обращаться к ним как к ресурсам.

Используемый вами конструктор относится к физическому файлу, который не может заглянуть внутрь jar-файла.


(РЕДАКТИРОВАТЬ) Также обратите внимание, что у вас нет гарантии, где находится текущий рабочий каталог. Следовательно, любые относительные ссылки могут нарушаться, как вы видите.

...