Загрузка картинок в затмении - PullRequest
0 голосов
/ 10 ноября 2011

Я занимаюсь разработкой приложения, которое требует отображения изображения. Если я запускаю свое приложение из Eclipse, используя следующий код

Image icon = ImageIO.read(new File("src/pci1.png"));

тогда изображение будет загружено, но оно не будет отображаться при выполнении моей работающей фляги.

Если я использую этот код

`String imgName = "pic1.png"; 
InputStream in = getClass().getResourceAsStream(imgName); 
ImageIcon img = new ImageIcon(ImageIO.read(in)); 
icon = img.getImage();`

тогда изображение не будет отображаться, когда я запускаю его в затмении, но хорошо отображается при использовании запускаемой банки. Кажется, я не могу найти решение, когда оно работает как в затмении, так и в моем беговом сосуде.

Любые идеи будут высоко ценится

Спасибо

1 Ответ

2 голосов
/ 10 ноября 2011

Ваша проблема в том, что eclipse предполагает, что ваш базовый каталог является каталогом проекта, поэтому он с радостью следует src/pic1.png и находит файл.Файл jar предполагает, что каталог, в котором он запускается, является базовым каталогом.

Обычно вы бы не упаковали папку с именем src в ваш jar-файл ... только пакеты, содержащиеся в нем.Хорошо хранить графику, конфигурацию и т. Д. В папке resources, которая вместо этого упакована в банку.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...