【转】Maven项目中将配置文件打包到jar包中

参考博客:http://blog.csdn.net/ciedecem/article/details/10382275

问题:

项目中需要用到从文件中加载json数据,如图放在conf目录下。

程序中用

XXX.class.getResource("app.json");

XXX.class.getClassLoader().getResourceAsStream("app.json")

都找不到该文件,报NullPointerException。类加载器只能加载classPath目录下面的文件,不能用这两种方式读取jar文件外部的文件。

解决方案:

参考网上博客...知道Maven项目会将src/main/resources目录中的所有文件都打包到jar中,那么上面的方法就可以用了。于是建resources目录,发现确实可行!

附:类加载器加载文件方式

[java]  view plain  copy
 
  1. <span style="white-space:pre;"> </span>InputStream inputStream = EmojiUtil.class.getClassLoader().getResourceAsStream("emoji.json");  
  2.         BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream));  
  3.         StringBuilder strSB = new StringBuilder();  
 

猜你喜欢

转载自www.cnblogs.com/didiaoxiong/p/9236527.html