问题:读取classpah 下文件内容本地环境读取正常,jar包形式部署到线上后读取失败
原因:以jar包方式部署时,文件都存在于jar包中,某些读取方式在开发工程中都可行,但是打包后,由于文件被保存在jar中,会导致读取失败。
解决方式
设resources目录下有一个test.txt文件,首先获得当前的类加载器,通过类加载器读取文件。
// 方法1 InputStream io = Thread.currentThread().getContextClassLoader().getResourceAsStream("test.txt");
// 方法2 InputStream io = getClass().getClassLoader().getResourceAsStream("test.txt");