我想获取我从build.properties
添加的属性的值dergilik.host=http://172.171.1.155/
使用以下代码
private final static String PROPERTIES_FILE = "build.properties";
private final static String HOST = "dergilik.host";
private final Properties props = new Properties();
private String getHost() {
try {
InputStream inp = new FileInputStream(PROPERTIES_FILE);
props.load(inp);
return props.getProperty(HOST);
} catch (Exception e) {
// TODO Auto-generated catch block
System.out.println(e.getMessage());
e.printStackTrace();
return null;
}
}
但是应用程序在props.load(inp);
时抛出FileNotFoundException。我也尝试使用ClassLoader类并发生NullPointerException。此外,我将PROPERTIES_FILE更改为“/ProjectName/build.properties”,但它不起作用。
那么如何让程序正确找到build.properties文件?
由于
答案 0 :(得分:1)
如果您想在网络应用程序中访问
ServletContext
,您应该使用ServletContext.getResourceAsStream()
。context-param
配置路径并尝试使用ServletContext.getInitParameter()
进行访问如果不是Web应用程序并且存在于类路径使用中,
Thread.currentThread().getContextClassloader().getResourceAsStream()