这是我的文件夹结构
proj
--src
--config
--bin
在linux中
/home/proj/src
/home/proj/config
我的配置文件夹包含log4j属性文件。
我正在尝试在linux中执行我的java类。
这就是我在java类中访问它的方法(这肯定是错误的)
String propFile = "/../config/Log4jprop.properties";
ClassLoader systemClassLoader = ClassLoader.getSystemClassLoader();
URL logPropFile = systemClassLoader.getResource(propFile);
PropertyConfigurator.configure(logPropFile);
我需要能够从linux中的类中访问我的属性文件。
我的命令的一部分如下
java -classpath /home/proj/config/Log4jprop.properties:./ Start
如何确保读取日志属性文件?
答案 0 :(得分:0)
如果要传递属性文件的路径,则可以选择以下选项:
props.load(new FileReader("/home/whatever/config.properties"));
答案 1 :(得分:0)
将类路径设置为“project”文件夹后,可以执行此操作。
FileInputStream str = null;
Properties prop = new Properties();
try
{
str = new FileInputStream("config/Log4jprop.properties");
prop.load(str);
PropertyConfigurator.configure(prop);
}catch( IOException ex ) {
ex.printStackTrace();
}finally {
if( str != null ) {
try {
str.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
答案 2 :(得分:0)
其中一个解决方案可能是:
使用
运行命令java -Dlog4j.configuration = / home / proj / config / Log4jprop.properties:./ Start
可替换地: