在同一Gradle项目中生成WAR和EAR工件

时间:2014-05-13 14:22:47

标签: java-ee gradle war dry ear

假设我有一个标准Web项目布局src/main/webapp的Gradle Web项目。

项目myproject-webbuild.gradle

apply plugin: 'java'
apply plugin: 'eclipse-wtp'
apply plugin: 'war'

我知道如果我定义一个应用{.war的辅助项目(myproject-web),我可以将.ear生成的myproject-ear文件包装在ear内。 {1}}插件和引用myproject-web作为依赖项:

项目myproject-earbuild.gradle

deploy project(':myproject-web')

我知道创建一个只有一个.ear的{​​{1}}文件是没有意义的(但这就是我在当前工作中需要传递工件的方法)。那么可以完全跳过项目.war的定义并直接在myproject-ear的构建文件中使用ear插件吗?

谢谢!

1 个答案:

答案 0 :(得分:0)

将耳插件添加到war项目中,然后使用以下配置将战争添加到耳中:

ear {
    from war.outputs.files
}