美文网首页
Java小记

Java小记

作者: 白驹过隙_忽然而已 | 来源:发表于2019-01-15 10:52 被阅读0次

    问题描述:
    springboot 项目在本地运行时,资源文件可通过spring 的ResourceUtil.getFile 直接获取,但是打成jar包后运行时无法访问本地文件。
    问题分析:
    由于打成jar后,调用ResourceUtil.getFile读取文件会将文件路径自动转换成jar:file:/D:/xxx/jsmp.jar!/BOOT-INF/classes!/xx.xx格式,由于在windows中,无法直接访问未解压的文件,所以导致文件无法读取。
    解决办法:
    通过classLoader加载文件流读取,如:org.springframework.util.ClassUtils.class.getClassLoader().getResourceAsStream(filePath)
    其中filepath为相对于classpath的路径,不能以/开头。

    相关文章

      网友评论

          本文标题:Java小记

          本文链接:https://www.haomeiwen.com/subject/oevedqtx.html