Java Maven正在使用错误的类目录创建一个war,或者将编译的类放在错误的位置
实际的新编译代码被放入2,但是war文件是使用1创建的。因此,我的war文件根本不是最新的 我该怎么办?下面显示了我的pom的片段…:Java Maven正在使用错误的类目录创建一个war,或者将编译的类放在错误的位置,java,maven,war,Java,Maven,War,实际的新编译代码被放入2,但是war文件是使用1创建的。因此,我的war文件根本不是最新的 我该怎么办?下面显示了我的pom的片段…: MyProject > src > target > MyProject > classes (1) > classes (2) 我的项目 org.apache.maven.plugins maven编译器插件 2.3.2 1.6
MyProject > src
> target
> MyProject > classes (1)
> classes (2)
我的项目
org.apache.maven.plugins
maven编译器插件
2.3.2
1.6
1.6
org.apache.maven.plugins
maven战争插件
src\main\webapp\WEB-INF\WEB.xml
我的项目
2.1.1
我对你所展示的东西有点怀疑
通常在战争项目中,目标应该是
<build>
<finalName>MyProject</finalName>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<source>1.6</source>
<target>1.6</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<configuration>
<webXml>src\main\webapp\WEB-INF\web.xml</webXml>
<warName>MyProject</warName>
</configuration>
<version>2.1.1</version>
</plugin>
</plugins>
</build>
我从未在Maven WAR项目中看到过target/PROJ
如果我展示的是你所看到的,那就是Maven一直在做的事情
源代码被编译并放入类中
在创建WAR期间,不同的文件,包括项目的目标/类
,将被复制到构成WAR结构的项目版本
目录中,并将用于创建WAR文件
因此,Maven在创建WAR时使用target/PROJ version/WEB-INF/classes
应该没有问题,因为它是在构建时从target/classes
复制的
如果不是你的情况,我可能会建议你分享你的POM。您提到的目录对于战争项目来说似乎不合理。target/PROJ只不过是爆炸战争
尝试删除目标目录。从命令行执行maven构建。并检查是否所有的东西都是在这一点上创建的。如果是这样,那么maven的行为是正确的,因为这两个位置都包含更新的类文件,并且target/PROJ目录是war目录。您可以使用该目录的路径在tomcat/web容器中设置上下文。您可以附加一些示例pom.xml来向我们展示错误的行为吗?@nightseare您希望看到其中的哪一位?
PROJ
+ target
+ classes
+ PROJ-version
+ WEB-INF
+ classes