我有一个奇怪的,令人愤怒的问题。我有一个使用Maven和Eclipse的Struts 2应用程序。我在包中有一个动作类和相应的验证xml文件,如下所示:
com / this / wont / work / RequestAction.java
RequestAction-validation.xml
我决定删除RequestAction-validation.xml并使用注释进行验证。但是在我从src/main/java
删除它并在Maven中进行全新安装之后,RequestAction-validation.xml仍然存在于我的target
目录中的WAR中!我无法摆脱它!我不知道它来自哪里。无论我清理Maven项目多少次或清理Eclipse项目,它仍然存在于target
中,因此我的Web应用程序仍然使用xml验证。
即使我删除target
并再次运行mvn clean install
,旧的XML文件仍会显示在target/MyWAR.war/WEB-INF/classes
下。奇怪的是,target/classes
中的文件是正确的 - 没有XML文件!但WAR正在部署中。
我正在使用Git进行源代码管理,即使我提交并推送更改以删除XML文件,它仍会显示在target/MyWAR.war
中。我无法在网上找到人们描述过这个问题或解决方案的地方,所以我欢迎提出如何摆脱这个流氓XML文件的建议。谢谢!
答案 0 :(得分:-1)
我不知道,src/main/webapp/WEB-INF/classes
下的本地回购项目中存在文件。我不确定该文件夹是如何到达那里的。该目录中有一个旧的RequestAction-validation.xml
文件(以及其他不需要的文件),并且必须已复制到WAR。
我删除了src/main/webapp/WEB-INF/classes
,这已经解决了!