Почему java код работает в Intellij Idea, но не работает с JAR-файлом после построения артефакта? Я попытался изменить его на "getResource (" ../ img / icon.jpg "))" и указать полный путь. Это не помогает.
введите описание изображения здесь
Я понял это. Проблема заключалась в том, что файл назывался «icon. JPG », но в коде «icon. jpg ». По какой-то причине это работало при запуске в IDE и не работало в JAR.
На основе определения метода getResource () из https://docs.oracle.com/javase/8/docs/technotes/guides/lang/resources.html
Методы getResource () находят ресурс с заданным именем. Правила поиска ресурсов, связанных с данным классом, реализуются ClassLoader класса.
он делегирует ClassLoader для загрузки ресурса, а ClassLoader найдет ресурс через classpath.
в этом случае вы можете попытаться указать classpath в вашей команде для проверки
java -cp target/your_file.jar your.package.name.YourClass