我们有一个使用maven配置的Web应用程序。
我已经在eclipse之外做了一个重新分解(将文件从一个包移动到另一个包),因为这不是在eclipse上设置的,而且是小修复。但是,我确实忘记在文件中更新对此文件的引用。
然后我做了mvn clean install
令人惊讶的是,它已成功构建。后来它在CI机器上失败了。
当我搜索我重新考虑的文件的文本时,我发现target\war\webapp-cache.xml
文件中出现了这个文件名。
它包含此重新分解文件的引用(旧路径,新路径)。
这是什么文件? 还有其他人遇到过这个问题吗?
UPDATE :我们在这个项目中使用GWT,当我做mvn clean install
时,它删除了目标文件夹,然后开始编译java源代码,
然后它开始将java编译成java脚本,在做了12次排列之后我的构建被击中了。所以,我做了Ctrl + C来阻止它,然后我发出了mvn install
(没有干净)。
这似乎是个问题。
但是在GWT开始编译之前,应该完成java编译,因为这个错误(指的是不存在的java文件)应该是java编译失败。
答案 0 :(得分:2)
来自Maven war plugin documentation
cacheFile:包含的文件 webapp结构缓存。
* Type: java.io.File * Since: 2.1-alpha-1 * Required: Yes * Default: ${project.build.directory}/war/work/webapp-cache.xml
war插件使用此文件来创建WAR文件。它包含最终工件的结构,因此它将维护对包含的所有内容的文件引用。