Относительный путь не работает при запуске jar через командную строку, но работает при запуске через Netbean - PullRequest
0 голосов
/ 06 мая 2011

Я добавил папку «Images» в папку «src» в проекте Java.

Для установки верхнего левого изображения в строке заголовка я использую изображение из папки изображений. Для этого я написал код Image img=Toolkit.getDefaultToolkit().getImage("src/Images/Sell Smart2 copy.jpg"); frame.setIconImage(img);

Это прекрасно работает, когда проект запускается через Netbeans Но когда я запускаю jar этого проекта через командную строку с помощью команды "java -jar project.jar", изображение не отображается.

Почему возникла эта проблема? Любое решение для этого

Спасибо, Изображение добавлено для ссылки.

enter image description here

Ответы [ 3 ]

1 голос
/ 06 мая 2011

Просто отбросьте СЦК с вашего пути. Кроме того, при загрузке поврежденных изображений вы должны использовать getClass (). GetResource ()

1 голос
/ 06 мая 2011

В банке вы можете использовать

getClass().getClassLoader.getResourceAsStream();

А когда вы получаете поток, вы можете делать все, что захотите.

Но помните, что при использовании resourseStream во время работы ваш проект в NetBeans может быть, он не будет работать, но когда вы создаете jar, он будет работать.

1 голос
/ 06 мая 2011
  1. Вы проверяли, включена ли папка src в jar при создании jar?используйте jar -xf или аналогичную опцию для просмотра содержимого jar или используйте winrar для просмотра содержимого jar.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...