В IDEA до сборки проекта, я сохраняю свой файл (например, properties) в папку resources:
Затем, обратиться к этому файлу из кода программы я могу так:
this.getClass().getClassLoader().getResourceAsStream("settings.properties")
Когда я забрасываю war на сервер, после распаковки этот файл лежит прямо в:
/var/lib/tomcat8/webapps/<project>/WEB-INF/classes/settings.properties
Почему так? Хотя до упаковки проекта, файл лежит в папке:
.../IdeaProjects/<project>/src/main/resources/settings.properties
К чему я всё это спрашиваю: мне нужно будет позже, из кода программы, например, скачивать какие-то файлы, или сохранять результат (ещё какие-то свои файлы) в определенную папку. Я думал, что всё это тоже будет храниться в какой-то папке resources где-то в глубине проекта. Я хотел, чтобы не было абсолютных путей, и если я надумаю что-то переместить, ну и так далее, чтобы относительный путь не менялся.
Что происходит на деле: я попытался сохранить свой файл так:
File file = new File(this.getClass().getClassLoader().getResource(".").getFile() + "/test.txt");
file.createNewFile();
Файл создаётся, всё хорошо, но... создаётся он в:
/var/lib/tomcat8/lib/test.txt
И тут я совсем запутался. До этого я вызывал уже имеющийся в проекте файл из ресурсов, он брался из другой папки, а теперь он лежит здесь почему-то.
А вот new File(".").getAbsolutePath()
возвращает /var/lib/tomcat8/.
В общем, если обобщить: мне нужно скачивать файлы/создавать и сохранять свои в какую-то папку (ресурсную, например), которая будет иметь относительный путь, и чтобы в коде программы я мог как легко сохранить файл в эту папку по этому пути, так потом и обратиться к нему. Потому что сейчас, как я понял, действует какая-то неразбериха: имеющийся до сборки проекта файл в папке ресурсов лежит в одном месте, а если потом пытаться создать файл там, то сохраняется он вообще непонятно куда.
Спасибо заранее.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
При вызове кода на версиях API <= 21 в onActivityResult (Intent data = null), на более старших версиях всё отлично работаетНе могу понять в чем проблема
Подскажите пожалуйста механизмы, библиотеки для работы со звуками, а именно проигрывание аудио mp3 и тд
У меня есть двоичный матрица с размером примерно 100К х 98ККаждая строка это Значение , а столбец это Свойство
подскажите как настроить доступ для администратора (хранить логин и пароль) к ГURL веб-приложения вhtaccess ? есть веб приложение, написанное на Java с использованием...