今天在打包项目war文件的时候,突然发现居然每个action包里面的properties文件都没打进来,在网上看了半天终于找到解决方法。
问题:maven执行package命令打包时,src/main/java路径下的properties文件全部丢失。
解决方式:pom.xml中加入resources配置
|
1 2 3 4 5 6 7 8 9 10 11 12 13 |
<build> <resources> <resource> <directory>${project.basedir}/src/main/java</directory> <includes> <include>**/*.properties</include> </includes> </resource> <resource> <directory>${project.basedir}/src/main/resources</directory> </resource> </resources> </build> |
说明:
首先了解maven生命周期如下:
| 生命周期阶段 | 目标 |
| process-resources | resources:resources |
| compile | compiler:compile |
| process-test-resources | resources:testResources |
| test-compile | compiler:testCompile |
| test | surefire:test |
| package | war:war |
| install | install:install |
| deploy | deploy:deploy |
经测试,
1.当 pom中不增加resources配置时,
- 执行
process-resources,class文件夹下只包含src/main/resources下的文件 - 执行
compile,class文件夹下包含src/main/resources下的文件与src/main/java下的*.class文件,丢失src/main/java下的*.properties文件
2.当pom中增加resources配置时
- 执行
process-resources,class文件夹下只包含src/main/resources下的文件与src/main/java下的*.properties文件 - 执行
compile,class文件夹下包含src/main/resources下的文件与src/main/java下的*.class文件与*.properties文件