2014-09-29 5 views
0

У меня есть структура следующего источникаДобавить папку в пути к классам

/src/main/java 
/src/main/resources 
/src/main/resources/stuff 
/src/main/resources/stuff/1.txt 
/src/main/resources/stuff/2.txt 

В моем коде я доступ к файлам в папке вещей через:

ClassLoader.class.getResource("/stuff/1.txt").getFile() 

Когда развертываются она развернута, как это :

/ 
/lib 
/lib/my-app.jar 
/lib/other.jar 
/lib/stuff 

в настоящее время мой путь к классам установлен: lib/* но я не могу решить lib/stuff/1.txt в том, как я делаю выше. Что мне нужно, чтобы установить путь к классам для вышеуказанного кода?

+1

тоже расплывчатый. Это, по-видимому, проект Maven, основанный на структуре каталогов. Как ваше приложение упаковано? Как он развертывается? Как это выполняется? И зачем использовать getResource(). GetFile(), а не просто использовать 100% -ный перенос getResourceAsStream()? – Gimby

ответ

0

Это может быть разница между использованием относительных и абсолютных путей, как указано в this blog.

ClassLoader.class.getResource("lib/stuff/1.txt").getFile() 

Как отметил @Gimby, было бы более эффективно использовать getResourseAsStream().

Смежные вопросы