Проблема с развертыванием приложения Spring Boot - не удается получить доступ к файлу из пути к классам после пакета mvn jar

Я работаю над проектом с весенней загрузкой. После завершения этого проекта и пакета с mvn install, чтобы получить мой скомпилированный файл jar, у меня возникают некоторые проблемы во время эксплуатации.

Некоторому контроллеру в моем приложении необходимо получить файлы или путь к файлу из пути к классам, используя

String filePath = ResourceUtils.getFile("classpath:file.json").getPath()

этот метод работает, пока я не упакую в банку

Та же проблема для доступа к файлам свойств из пути к классам.


person SkalpoVich    schedule 14.03.2020    source источник


Ответы (1)


Вы правы, что ваш подход будет работать в среде IDE, но для jar он не найдет файл. Поэтому используйте приведенный ниже код, чтобы он заработал.

File file = new ClassPathResource("file.json").getFile();

Вот несколько разных способов добиться того же.

person Alien    schedule 14.03.2020
comment
Спасибо за помощь. но этот метод работает только в моей IDE. после упаковки в банку у меня все еще возникают проблемы. java.io.FileNotFoundException: ресурс пути к классу [file.json] не может быть преобразован в абсолютный путь к файлу, потому что он не находится в файловой системе: jar: file: /Desktop/myapp/target/myapp-0.0.1-SNAPSHOT. война! / WEB-INF / классы! /file.json - person SkalpoVich; 16.03.2020