把Idea从v2019升级到v2020,运行先前的Spring MVC项目,竟然报错,提示Spring MVC的一个核心配置文件spring-root.xml未找到,其实是有的,项目结构图如下所示:

花了很多时间才发现Idea在编译类之后没有把我包下面的配置文件copy过去。因为Idea新版本开始只支持外部编译,因此需要在pom.xml文件手动指定资源文件的目录。在Maven中添加了以下配置之后,资源目录src/main/java/resources下面的配置文件也就copy过去了,所以再次运行代码的时候就ok了。
pom.xml关键配置:
<build>
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.properties</include>
<include>**/*.xml</include>
</includes>
<filtering>false</filtering>
</resource>
<resource>
<directory>src/main/resources</directory>
<includes>
<include>**/*.*</include>
</includes>
<filtering>false</filtering>
</resource>
</resources>
</build>
参考: