我是靠谱客的博主 俭朴发夹,最近开发中收集的这篇文章主要介绍使用 ResourceUtil.getReader()时提示没有找到指定文件,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

错误原因

其中getReader(@NotNull String resource, java.nio.charset.Charset charset)
对resource的位置先进行绝对路径判断,如果没找到会进行相对路径查找。
在这里插入图片描述
(是kotlin格式写的)

ResourceUtil.getReader(
                "/${
                    if (tplName.toLowerCase().endsWith(".sql")) {
                        tplName
                    } else {
                        tplName + ".sql"
                    }
                }", Charsets.UTF_8
            ).readText()

我应该是相对路径吧…但是,系统报错:

org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘cronComponent’:
Invocation of init method failed; nested exception is cn.hutool.core.io.IORuntimeException:
FileNotFoundException: F:mxsql1.sql (系统找不到指定的文件。)

也就是说我的路径错误

解决办法

查了很多资料,找到了其中一个好用的解决方法,加入classpath.

ResourceUtil.getReader(
                "classpath:/${
                    if (tplName.toLowerCase().endsWith(".sql")) {
                        tplName
                    } else {
                        tplName + ".sql"
                    }
                }", Charsets.UTF_8
            ).readText()

疑问和思考

我用的是springboot和kotlin,按理说springboot会自动查找到resource下面的文件,但是我报错是直接查的绝对路径(项目在F盘下)。需要找到原因,然后把路径改到resource下。

当天(2021/8/19)更新:不用添加classpath,将函数内的“/”去掉后就可以运行了,郁闷。。。

最后

以上就是俭朴发夹为你收集整理的使用 ResourceUtil.getReader()时提示没有找到指定文件的全部内容,希望文章能够帮你解决使用 ResourceUtil.getReader()时提示没有找到指定文件所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(50)

评论列表共有 0 条评论

立即
投稿
返回
顶部