Я хотел бы прочитать ресурс из моей фляги так:Чтение файла ресурсов внутри баночки
File file;
file = new File(getClass().getResource("/file.txt").toURI());
BufferredReader reader = new BufferedReader(new FileReader(file));
//Read the file
и она отлично работает при запуске его в Eclipse, но если я экспортировать его в банку запустить его есть IllegalArgumentException:
Exception in thread "Thread-2"
java.lang.IllegalArgumentException: URI is not hierarchical
, и я действительно не знаю, почему, но с некоторыми тестирования я обнаружил, если я изменю
file = new File(getClass().getResource("/file.txt").toURI());
к
file = new File(getClass().getResource("/folder/file.txt").toURI());
, то он работает наоборот (она работает в банке, но не затмить).
Я использую Eclipse, и папка с моим файлом находится в папке класса.
Если вы хотите прочитать файлы из каталога в банке с любые номера для файлов, см. [Stackoverflow-Link] (https://stackoverflow.com/questions/26185137/spring-boot-resource-not-found-when-using-executeable-jar/39818817#39818817) –
Я не уверен, что исходный вопрос связан с весной. Ссылка в предыдущем комментарии ссылается на специальный ответ Spring от другого вопроса. Я считаю, что 'getResourceAsStream' по-прежнему является более простым и более переносимым решением проблемы. –