Как заставить программу найти файл свойств?

У меня есть файл свойств, который я хочу, чтобы моя java нашла, но это не так, а затем я получаю исключение nullpointerexception. Как я могу настроить maven или причал для включения моего файла свойств? Он работает, когда я запускаю класс из целевого каталога скомпилированных классов, а файл свойств находится в том же каталоге. Но когда я создаю проект с помощью maven и запускаю его с пристани, файл свойств не найден, и я не знаю, куда его поместить, поскольку я не знаю, что это за каталог запущенного экземпляра. Можете ли вы сказать мне, где разместить файлы proterties того, что поместить в pom.xml, чтобы включить файл свойств?

        PropertiesCredentials credentials = new PropertiesCredentials(
                AWSJavaMailSample.class
                        .getResourceAsStream("AwsCredentials.properties"));

person Niklas R.    schedule 18.01.2014    source источник


Ответы (1)


Где сейчас файл? Он должен находиться в корне пути к классам (загрузчика классов, загрузившего класс AWSJavaMailSample), чтобы его можно было найти с помощью getResourceAsStream (), указав только имя. В стандартных проектах Maven его следует скопировать, если вы поместите его в src / main / resources.

см. http://docs.oracle.com/javase/7/docs/api/java/lang/Class.html#getResourceAsStream(java.lang.String)

person scraatz    schedule 18.01.2014
comment
Я пробовал размещать его в разных местах помимо commoon, а также в каталоге, из которого я запускаю плагин maven для jetty mvn jetty: run. Я храню файл как минимум в 4 разных местах, но он все еще не найден. - person Niklas R.; 19.01.2014
comment
У вас есть каталог target / classes в вашем базовом каталоге? Находится ли файл свойств в этом каталоге после компиляции mvn? - person scraatz; 19.01.2014
comment
Да и да, это есть. Моя проблема похожа на этот вопрос: stackoverflow.com/questions/17949206/ Я получаю исключение nullointerexception при попытке загрузить файл свойств, возможно, мне следует поместить его в какой-нибудь каталог webapp? - person Niklas R.; 19.01.2014