我有一个包含多个 .war 包的多模块项目。我希望能够在父 pom 上运行“mvn jetty:run”,并将每个子模块的 .wars 部署在同一个嵌入式码头实例上。
我能够从每个子模块成功运行“mvn jetty:run”,但是当我在父 pom 上运行它时,它会失败并跳过子模块。
尝试从父 pom 运行 'mvn jetty:run' 会导致以下结果:
[错误] 无法在项目 FlashCards_App 上执行目标 org.mortbay.jetty:maven-jetty-plugin:6.1.16:run default-cli):Webapp 源目录 C:\dev\sour ce_code\FlashCards_App\src\main\webapp不存在 -> [帮助 1]
确实,父 pom 上没有 webapp 目录。
这是我的pom的摘录。完整的文件可以在这里找到。
<modules>
<module>FlashCards_Domain</module>
<module>FlashCards_GWT</module>
<module>FlashCards_Service</module>
<module>FlashCards_Service_SpringData</module>
<module>FlashCards_Service_Jpa</module>
<module>FlashCards_WebServices</module>
<module>FlashCards_Struts</module>
<module>FlashCards_Test</module>
</modules>
<build>
<plugins>
<plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>maven-jetty-plugin</artifactId>
<version>${jetty.version}</version>
</plugin>
</plugins>
</build>
这与 2009 年在这篇文章中提出的问题基本相同。已经有几年了,我想知道现在是否还有其他选择。上一篇文章提出了两种解决方案(1)使用 cargo 插件和(2)从子模块构建姐妹战争。