У меня была такая же проблема ... Файлы были в моем jar-файле, исправлены, как и ожидалось. Проект работал нормально из среды IDE (Intellij), но Jar не сможет загрузить некоторые из моих активов.
Проблема заключалась в том, что моя рабочая станция для разработки является машиной Windows, которая не учитывает регистр для каталогов и имен файлов, но механизм доступа к файлам, который Java использует для чтения файлов в JAR, чувствителен к регистру.
Итак, там, где у меня был «data / zone / dynamic / myart.png», который работал при запуске из IDE, JAR не работал, пока я не изменил его на «data / Zones / Dynamic / myart.png» ... только эти две ошибки в заглавных буквах делали ресурс недоступным для поиска ... У тех, кто разрабатывает Linux, такой проблемы нет, поскольку вся система чувствительна к регистру, они привыкли быть осторожными с такими вещами.
Итак, если ваш код не может найти ваши ресурсы при запуске из JAR, но файлы есть, дважды проверьте путь / имя файла для правильного регистра.
Помните: содержимое банки легко проверить, просто переименуйте ее в .zip и откройте / извлеките.
Удачи!