Вот моя Maven структура:Исполняемые банку не может найти ресурсы
project
---src
----main
----java
----App.java
----resources
----config.properties
Вот код для чтения config.properties:
private static final URL propFile = ClassLoader.getSystemResource("config.properties");
public App() throws IOException {
props.load(new FileInputStream(propFile.getFile()));
}
public static void main(String[] args) {
try {
App app = new App();
//Something interesting happens here
} catch (IOException e) {
e.printStackTrace();
}
}
Когда я бегу java -jar MyApp-1.0.jar
, я получаю FileNotFoundException
:
java.io.FileNotFoundException: файл: /home/dragon/JavaProjects/MyApp/target/MyApp-1.0.jar! /config.pr (Нет такого файла или каталога)
Что в этом плохого?
Да, это отлично работает. Но я не могу понять, почему Java не ищет папку классов в моем базовом варианте. – Dragon
@ Dragon - см. Править. Ваше приложение JAR'ed, поэтому вы не сможете использовать выходной поток файла для извлечения встроенных ресурсов. Вы могли бы просто спросить, а не завышать. – Perception
Теперь мне стало ясно. Благодарю. – Dragon