在学习spring boot的时候,书中的代码是把java文件和资源文件放到了同一个文件夹下,在idea maven项目下面运行会一直报错,因为资源文件不会自动复制到classes文件夹下,如下图:
在eclipse中,会把src下所有的资源文件复制到classes文件夹下,而idea的maven项目,只是把标记为资源文件夹下的资源文件复制到classes,标记为sources文件夹下的资源文件不会复制到classes文件夹下。
解决方法:
方法一:将资源文件放到resources文件夹里
idea编译后,资源文件会复制到classes文件夹,如下图:
方法二:在maven配置文件pom.xml里指定资源文件。
如果希望把所有类型的资源文件都复制到classes,可以通过下面这种方式:
<build>
<resources>
<resource>
<directory>src/main/java</directory>
<excludes>
<exclude>**/*.java</exclude>
</excludes>
</resource>
</resources>
</build>
编译后如下图所示:
如果只想保留指定类型的资源文件,可以通过includes设置,如下图:
<build>
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
</includes>
</resource>
</resources>
</build>
编译后如下图: