Я пытался экспортировать свой проект в качестве Runnable Jar, но мои ресурсы не загружались, потому что я пытался напрямую получить доступ к изображению с пути моего проекта. Например:Java: не удается получить доступ к изображениям в ресурсах
ImageIcon icon = new ImageIcon("resources/icon.png");
Эта работа будет, когда я запустил проект из самого Eclipse, но я заметил, что изображения не были включены в файл JAR. Поэтому после исследования я выяснил, что мне нужно создать исходные папки и поместить в них изображения/текстовые файлы, а затем использовать getClass(). GetResource(), чтобы получить к ним доступ. Однако, когда я это делаю, URL-адрес всегда возвращается как null.
Для справки, это то, что мой проект исследователь выглядит следующим образом:
Test
---src
---resources
---icon.png
---config
---file.ini
А вот код, который дает мне NullPointerException при попытке получить доступ к icon.png:
ImageIcon icon = getClass().getResource("/resources/icon.png");
В качестве альтернативы , Я также пробовал:
ImageIcon icon = getClass().getClassLoader().getResource("resources/icon.png");
Но это также заканчивается в NullPointerExc eption. Я проверил множество решений в Интернете, но никто из них, похоже, не работал для меня. Обратите внимание, что мне также нужно иметь доступ к файлу .ini, поэтому решение, которое работает только для изображений, не сможет полностью решить мою проблему. Любая помощь будет очень признательна, спасибо.
при упаковке в банке , где is icon.png? Не могли бы вы разместить структуру банки? – alexbt
Ресурсы должны находиться в папке под/src – basic
Попробуйте '' /icon.png "' - или посмотрите с 7zip, WinZip или такими в банке для пути. Без ведущего '/' путь будет относиться к пути пакета для класса, на котором вы получаетеResource. –