最近买了新电脑,然后用IDEA把代码拉下来,结果发现在别的电脑好好的项目,在这台电脑启动不了,我知道,我又应该写一篇探索问题的文章了。
目录
问题
***************************
APPLICATION FAILED TO START
***************************
Description:
Cannot determine embedded database driver class for database type NONE
Action:
If you want an embedded database please put a supported one on the classpath. If you have database settings to be loaded from a particular profile you may need to active it (no profiles are currently active).
Process finished with exit code 1
问题排查
分析环境
首先分析一下我目前的状况,Spring Boot + MyBatis-Plus + MySql。
代码和我能用的电脑的是一致的,而MySql目前已经连接的是阿里云,所以似乎都不存在什么特殊的问题。
翻译错误信息
通过看错误信息,大体是数据库驱动有问题,为了准确一点,我们用有道翻译一下:
百度原因(一般都是百度不到具体解决办法,我才写文章的)
针对这个问题,有一篇文章提到加入一个h2的依赖就可以了,但是我并不想这么做,既然在别的电脑上没问题,为什么又要另外引入呢?
通过另外一个朋友发的文章,提到了Spring Boot 的yml文件没有识别到。我意识到,可能是直接拉的代码,在IDEA上识别出具体的框架,所以才不知道要加载哪个配置文件。
自我思考与发现问题
那又是什么导致了这个问题,该如何排查呢?
我原本以为是Maven的问题,检查来检查去,更新了文件等等,都是没有生效。
直到无意中瞥见了我的yml文件,竟然没有可爱的绿色小叶子!
然后又是一顿猛操作,都没有效果。无奈之下打开了旧电脑的项目,通过对比终于发现了问题:
打开Project Structure:File->Project Structure,最后发现在Modules中,正常情况下应该是有三项,而我现在的电脑上竟然只有两项,缺少了Configuration Files
正常的情况
现在的电脑:只有两项。
我通过点击绿色的叶子进行配置,发现即使选择了yml文件,OK按钮还是不能点击,在输入框中始终提示一段内容:No configuration files matching pattern 'application' found
解决方案与总结原因
然后又通过百度以上的问题,找到了解决的办法,就是:
File->Mark Directory as -> Resources Root
原因就是IDEA没有将我的resource 文件夹识别成资源文件,所以也就不读取配置文件了。
现在,文件夹设置好了,绿叶子也出来了,启动项目,没毛病了!
问题解决!
参考链接:
https://blog.youkuaiyun.com/qq_15285457/article/details/90633188