我有旧的Web应用程序项目。然后我添加了pom.xml
,并添加了maven-war-plugin
。在旧项目中,源代码位于"Java Resources/src"
目录中。
在我的maven-war插件中,我尝试覆盖这样的默认源代码,但不能正常工作。
在编译期间我看到: `
[INFO]
[INFO] --- maven-compiler-plugin:3.1:testCompile (default-testCompile) @ webproj ---
[INFO] No sources to compile
[INFO]
`
我的pom.xml
:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.4</version>
<executions>
<execution>
<phase>compile</phase>
<goals>
<goal>exploded</goal>
</goals>
</execution>
</executions>
<configuration>
<webXml>WebContent\WEB-INF\web.xml</webXml>
<webappDirectory>WebContent</webappDirectory>
<source>${project.basedir}\src</source>
<target>${maven.compiler.target}</target>
<encoding>utf-8</encoding>
</configuration>
</plugin>
答案 0 :(得分:1)
Maven-war-plugin使用项目源文件夹,覆盖你必须放在你的pom中的位置,如下所示:
<build>
<sourceDirectory>/Java Resources/src</sourceDirectory>
<plugins>
...
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<version>${version.build-helper-maven-plugin}</version>
<executions>
<execution>
<phase>generate-sources</phase>
<goals>
<goal>add-source</goal>
</goals>
<configuration>
<sources>
<source>social/src/main/java</source>
</sources>
</configuration>
</execution>
</executions>
...
</plugins>
<build>
答案 1 :(得分:1)
如果您打算迁移到Maven,我建议您按照Maven Standard Directory Layout进行操作。因此,您应该将源文件移动到src/main/java
,将.properties文件等静态资源移动到src/main/resources
,将CSS和JavaScript文件等webapp资源移动到src/main/webapp
。
答案 2 :(得分:0)
您可以在warSourceDirectory
配置中指定maven-war-plugin
:
<project>
...
<build>
<plugins>
<plugin>
<artifactId>maven-war-plugin</artifactId>
<version>2.3</version>
<configuration>
<warSourceDirectory>old/project/source</warSourceDirectory>
</configuration>
</plugin>
</plugins>
</build>
...
</project>