我在Maven WAR项目的resources/components
目录中有许多复合组件。我希望我的复合组件可以重复使用,而是将它们单独打包到JAR中(它们可能已关联ManagedBeans
。
许多现有问题(例如this one)解决相同或类似的任务。但是,没有人指定如何使用Maven来自动化该过程。
我更愿意不使用Ant。
答案 0 :(得分:2)
我建议使用maven-antrun-plugin。以下是经过验证的示例:
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<execution>
<id>prepare-deploy-package</id>
<phase>prepare-package</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<tasks>
<copy todir="${project.build.directory}/${project.build.finalName}/META-INF/resources" overwrite="true">
<fileset dir="src/main/resources">
</fileset>
</copy>
</tasks>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
答案 1 :(得分:1)
这对我有用:
<resources>
<resource>
<directory>src/main/webapp/resources</directory>
<targetPath>META-INF/resources</targetPath>
</resource>
<resource>
<directory>src/main/webapp/WEB-INF/</directory>
<targetPath>META-INF</targetPath>
</resource>
</resources>
确保拥有:
<packaging>war</packaging>
A还启用了maven插件,允许Netbeans将项目识别为Web项目:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.1.1</version>
<configuration>
<failOnMissingWebXml>false</failOnMissingWebXml>
</configuration>
</plugin>