前言
记录一次使用IDEA社区版配置SpringBoot项目的经历,包括遇到的问题及解决过程
IDEA版本:IntelliJ IDEA 2024.2.3 (Community Edition)
问题描述1
IDEA社区版中并不支持Spring项目的创建等其他操作,在导入项目后无法自动识别,需要手动进行配置
解决过程1
项目导入后,在项目结构中以Maven方式导入模块
找到模块的路径后点击从外部模型导入模块,并选择Maven
点击创建后IDEA就可以正确识别到Application.java,窗口右侧也会出现Maven菜单
问题描述2
在依赖都正常下载的情况下报无法解析配置类的错误,导致项目无法启动,log如下:
org.springframework.beans.factory.BeanDefinitionStoreException: Failed to parse configuration class [com.xxx.xxx.xxx.xxxApplication]; nested exception is org.springframework.core.NestedIOException: Failed to load class [javax.servlet.Filter]; nested exception is java.lang.ClassNotFoundException: javax.servlet.Filter
报错提示找不到javax下的servlet包,核对配置发现均无误
解决过程2
分析报错,项目编译过程中无报错,在启动后找不到servlet包,而servlet包的作用域一般被配置为provided,所以猜测是servlet包在项目启动后无法正确被Spring找到
在运行配置中添加运行选项,勾选 将带有"provided"作用域的依赖项添加到类路径
,保存配置后再次运行发现无报错,可以正确启动项目