Java程序有时会被打到jar包里执行,同时src/main/resources里一些配置文件也会被打进去。
比如,src/main/resources下有一个box目录,里面有几个json文件,用maven制作jar包会被一同打进jar里,如果Java程序需要访问,可以采用以下方法:
final String configFolder = "/box";
String configFilePath = configFolder + "/001.json";
logger.info("ConfigFilePath:{}", configFilePath); InputStream instream = this.getClass().getResourceAsStream(configFilePath);
if (instream == null) {
String errMsg = String.format("Cannot find configFile at %s", configFilePath);
throw new Exception(errMsg);
} BufferedReader bufReader = new BufferedReader(new InputStreamReader(instream));
...
如果路径配置正确,上面红色一行就是核心语句,用它就能访问到json文件,然后使用BufferredReader就能可以了。
--2020-03-25--