1.使用SpringBoot部署项目,可以正常启动
2.idea的Run/Debug Configurations出现叉号
3.起初以为是启动类出现了问题,于是检查启动类的注解
4.结果发现注解全都爆红,使用idea的导入提示,一直提示请加入依赖或者重新写个注解.这说明依赖没有引入进来.可是,检查依赖后,发现SpringBoot的起步依赖确实引入进来,于是进入百度开始搜索答案
5.百度上搜索到许多情况
1)依赖关系乱,可是我的项目在之前是可以正常运行的,现在也是可以正常运行的,排除
2)起步依赖注解错误,排除
6.后来总结了一下,网上的解决思路基本上都是依赖没有导入,或者起动类配置错误的问题.显然不符合我这种情况,没办法,只能自己分析了.
7.注解是通过什么方式导入进来的,最开始想到java程序的运行过程
1)先通过cpu将相关的寄存器跑起来
2)JVM通过本地方法栈连接操作系统
3)程序编译形成class文件到方法区
4)创建对象到堆内存
5)在方法栈中运行程序
8.由上,猜测可能在第三步之前出现了问题,于是一次排查.发现项目下的target目录下的.class文件打不开,就是说idea无法编译.问题找到了.
9.那么,为什么无法编译呢,于是开始查找Settings设置.发现在FileTypes–>Javaclass下没有设置文件模板,应该是之前误删了
10.加上 (*.class),所有问题都解决了
11.总结
1)在使用idea的时候,在不清楚的情况下尽量不要修改默认设置.
2)遇到问题冷静的分析程序在idea的执行过程,依次排查
3)虽然解决了问题,可是还是不清楚程序为何可以正常运行.后来有仔细想了一下,应该是springboot整合tomcat的起步依赖导入tomacat,tomcat执行程序,自己编译文件,因此不存在去target目录下寻找class文件.而idea的注解导包是通过编译文件进行的,于是就出现了上述问题
idea2020的Run/Debug Configurations出现叉号
于 2022-02-21 16:08:06 首次发布