Как получить папку из ресурсов

120
20 августа 2019, 04:00

Spring Boot приложение. Вызываю в нем командную строку:

Runtime.getRuntime().exec(command,null,directory)

Где directory это должен быть File("path to folder"). В папке resources лежит папка с файлами, из которой собственно и нужно запустить команду. Вопрос в том как правильно передать directory во время выполнения, если это приложение собирается в executable jar и будет запускаться просто из командной строки.

File directory = new File(getClass().getResource("resources/directory").toExternalForm());
    Runtime.getRuntime().exec(command,null,directory);

Так не работает.

Answer 1

Думаю вам это должно помочь:

@Service
public class YuorService {
    private static final String PATH = "/file.txt";
    private String data;
    @PostConstruct
    public void init() throws IOException {
        InputStream inputStream = getClass().getResourceAsStream(PATH);
        InputStreamReader inputStreamReader = new InputStreamReader(inputStream);
        BufferedReader bufferedReader = new BufferedReader(inputStreamReader);
        data = bufferedReader.lines().collect(Collectors.joining());
        bufferedReader.close();
        inputStreamReader.close();
        inputStream.close();
    }
}

Еще есть такой вариант:

@Service
public class YourService {
    private static final String SRC = "src";
    private static final String[] PATH_TO_FILE = {"main", "resources", "file.txt"};
    private File file;
    @PostConstruct
    public void init() {
        Path path = Paths.get(SRC, PATH_TO_FILE);
        logFile = new File(path.toUri().getPath());
    }
}
Answer 2

Воспользуйтесь специализированным классом ClassPathResource

ClassPathResource imgFile = new ClassPathResource("/META-INF/resources/static/image/",
                Thread.currentThread().getContextClassLoader());
READ ALSO
Фильтр списка по коллекции строк

Фильтр списка по коллекции строк

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

118
Парсинг объектов с ключами, с помощь JsonReader

Парсинг объектов с ключами, с помощь JsonReader

Возникла проблема с парсером JSON с помощью класса JsonReader (JSON приложен ниже, а так-же код парсера)Получается что первый элемент он читает хорошо,...

120