Как получить путь к файлу в Spring Boot, чтобы использовать его в качестве аргумента в другом библиотечном методе?

#java #spring-boot #resources #classpath #fileinputstream

#java #spring-boot #Ресурсы #classpath #fileinputstream

Вопрос:

Мне нужен способ получить путь к ресурсу в Spring Boot, потому что я буду использовать этот путь в качестве аргумента для другого метода в существующей библиотеке, который я не могу изменить.

Он используется как:

 FileInputStream fis = new FileInputStream(fileName);
  

Я должен указать это имя файла там. Ресурс в приложении Spring Boot находится в папке src/main/resources . Использование Resource и getResource() не помогает, так как мне нужно указать строку пути к файлу.

Использование только «src /main /resources /filename» тоже не работает.

Итак, мой вопрос: как вы получаете путь к файлам, которые находятся в пути к классу Spring Boot?

Я решил это так:

         try {
            filename = ResourceUtils.getURL("classpath:").getPath()  "myFileName";
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        }

  

С помощью этого метода, когда я запускаю приложение, оно работает, но когда я запускаю jar, я получаю исключение:

 (The filename, directory name, or volume label syntax is incorrect)
  

Кто-нибудь сталкивался с этой проблемой? Пожалуйста, помогите