Как правильно прописывать пути к ресурсам в Java? Доброго всем дня. В данный момент изучаю java. Разработку веду в intellij idea. Взялся реализовать простой справочник используя javafx. БД sqlite, для подключения maven подтягивает необходимые библиотеки. Все работает пока запускаешь из idea и перестает работать после сборки в jar. В процессе изучения понял что не тем собирал и с путями у меня полная неразбериха. Потому вопрос - как правильно прописать пути к папке resources? В idea когда создаешь maven project имеем следующую структуру
src
--main
----java
------Main
----resources
------db
--------test.db
------test.fxml
--test
pom.xml
Как правильно в Main прописать путь к test.fxml и к test.db? На данный момент fxml (перенес его в корень к Main) получаю через
Parent root = FXMLLoader.load(getClass().getResource("main.fxml"));
Но по мне так не верно. Почему при вызове
System.out.println(getClass().getClassLoader().getResource("test.db"));
из Main В терминале выдает
file:/E:/JavaProjects/test/target/classes/test.db
<?xml version="1.0" encoding="UTF-8"?>
http://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0 UTF-8 maven maven 1.0
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<version>3.0.2</version>
<configuration>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>3.0.2</version>
<configuration>
<archive>
<manifestFile>${project.basedir}/src/main/java/META-INF/MANIFEST.MF</manifestFile>
</archive>
</configuration>
</plugin>
</plugins>
<resources>
<resource>
<directory>src/main/java/ru/varizo/maventest/resources</directory>
<includes>
<include>**/*.txt</include>
</includes>
</resource>
</resources>
</build>
у вас файл находится в db папке. поэтому нужно указывать расположение файла внутри ресурса
URL resource = Main.class.getClassLoader().getResource("db/file.db");
File f = new File(resource.toURI());
System.out.println(f.exists());
результат true
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
У меня есть строка, части которой обрамлены в тегиНапример:
Подскажите, какого формата и какого размера должны быть иконки для методов setSmallIcon() и setLargeIcon() и где их можно скачать? Или есть ли в Android стандартные...
Всем привет ,хотел проверить наличие интернета вот таким способом