Как правильно добавить картинку в проект java. При отладке картинка отображается, но после сборки проекта в jar, картинки нет.
systemTray = SystemTray.getSystemTray();
Image image = Toolkit.getDefaultToolkit().getImage("src\\images\\logo-main2.png");
TrayIcon trayIcon = new TrayIcon(image , "GrindFM", popupMenu);
trayIcon.setImageAutoSize(true);
systemTray.add(trayIcon);
Ответ
Проблема в том, что вы загружаете ресурс с диска, а не с jar'ника. Когда вы работаете в dev окружении, вы запускаете jar'ник оттуда, откуда можно пройти по папкам на диске и дойти до этой картинки. Когда вы запускаете это на другом ПК, то там соответственно этой папки нет. Вам нужно использовать загрузку ресурсов из classpath, для этого поменяйте код следующим образом
systemTray = SystemTray.getSystemTray();
URL resource = getClass().getResource("images/logo-main2.png");
Image image = Toolkit.getDefaultToolkit().getImage(resource);
TrayIcon trayIcon = new TrayIcon(image , "GrindFM", popupMenu);
trayIcon.setImageAutoSize(true);
systemTray.add(trayIcon);
Все должно заработать
Комментариев нет:
Отправить комментарий