Файлы ресурсов Maven после сборки jar - PullRequest
0 голосов
/ 15 февраля 2012

После сборки проекта maven в jar, я получаю FileNotFoundException.Я знаю, что файлы ресурсов находятся в корневом каталоге после создания проекта, поэтому я использую это для получения моего файла:

final File file = new File("maps/ParcelsCountyRDMFinal5.shp");

Вот исключение:

C:\Users\ilija\Desktop\MavenizedCP\cp-map\target>java -jar cp-map-0.0.1-SNAPSHOT
-shaded.jar

Exception in thread "main" java.io.FileNotFoundException: C:\Users\ilija\Desktop
\MavenizedCP\cp-map\target\maps\ParcelsCountyRDMFinal5.shp (The system cannot fi
 nd the path specified)

Рабочий каталог здесьэто, очевидно, каталог, из которого я хочу запустить JAR.Я думаю, что рабочий каталог должен быть корнем jar.

Пожалуйста, помогите здесь.Что я делаю неправильно?

Ответы [ 2 ]

0 голосов
/ 16 февраля 2012

Это то, как вы должны получить абсолютный путь для файла ресурсов, связанного внутри фляги.

URI fileURI = Thread.currentThread().getContextClassLoader()
                .getResource("ParcelsCountyRDMFinal5.shp").toURI();
filepath = new File(fileURI).getAbsolutePath();

Это работает для меня ..

0 голосов
/ 15 февраля 2012

Ваш файл находится в вашем classpath.Вы можете попробовать окончательный файл file = ClassLoader.getSystemResource ("maps / ParcelsCountyRDMFinal5.shp"). GetFile ();

...