Gradle и src / main / resources - PullRequest
0 голосов
/ 24 июня 2019

У меня есть проект gradle, который отлично работает в затмении. В коде Java у меня есть

Properties p = MyClass.class.getClassLoader.getResourceAsStream("myProps.properties");

File f = new File(p.getProperty("myFile"));

Моя структура:

src/main/java - has java files
src/main/resources - has myProps.properties and myFile.txt

myProps.properties имеет:

myFile=src/main/resources/myFile.txt

Если я выполняю сборку gradle (используя задание по умолчанию shadowJar), ​​мои ресурсы теперь перемещаются из src / main / resources в корень файла jar.

shadowJar {
   manifest{
     // The only thing I modify is the attributes
   }
}

Когда я выполняю банку, запустив
"java -jar myJar.jar" Я получаю исключение FileNotFound, ссылающееся на файл ресурса myFile.txt.

Как правильно решить эту проблему, чтобы код работал как в среде Eclipse, так и в исполняемом jar-файле?

1 Ответ

1 голос
/ 24 июня 2019

Мне нужно было прочитать файл как поток (так же, как я читал в файле свойств).Я удалил «src / main / resources» из пути в файле свойств, и он работал

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...