用ClassLoader.getResourceAsStream的方式读取properties配置文件,myeclipse导出的可执行jar包的时候会把properties也直接打在jar包里面了。
导致修改配置文件还需要重新导jar包,太麻烦了。所以想要用jar包读取外部的配置文件。
用下面的方式,导出jar包之后只需要把jar包和相应的配置文件放到一个目录下即可读取了
public class Test {
public static void main(String[] args) throws Exception {
System.out.println(getProperties("name"));
}
public static String getProperties(String key){
if (key == null || key == "" || "".equals(key)) {
return null;
}
Properties properties = new Properties();
File file = new File("cmd.properties");
FileInputStream fis;
try {
fis = new FileInputStream(file);
properties.load(fis);
fis.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return properties.getProperty(key);
}
}