如何从maven-archetype-webapp工件生成ear文件?

时间:2010-05-15 02:20:45

标签: java maven-2 web-applications war ear

我目前有一个使用maven-archetype-webapp工件构建的项目。该项目的默认包装是战争。

我是否有可能在此webapp pom.xml中插入maven-ear-plugin生成包含此项目战争的ear文件?我试过了,但war文件没有嵌入到生成的ear文件中。除战争档案外,它还有其他一切。

我阅读了许多与Maven相关的文章,也许我可以使用maven-archetype-j2ee-simple artifact。但是,我不愿意这种用法有两个原因: -

  • 此工件处理ejbs以及我不使用的所有额外功能。这让我的项目看起来很臃肿。
  • 其次,在我创建ear文件之前,似乎需要先将Web模块安装到存储库中。这是创建ear文件的首选方法吗?

如何使用webapp的pom.xml中的maven-ear-plugin创建包含war文件的ear文件?如果这种方式不可行,那么首选方式是什么?

如果我的问题听起来有点新手,我很抱歉,我意识到我还有很多东西需要了解Maven。

非常感谢。

1 个答案:

答案 0 :(得分:3)

maven ear插件假设任何WAR都是一个单独的项目,因此您需要两个项目以及一个父项目。这是maven如何打包的功能。每个项目产生一个工件。有办法解决这个问题,但Maven会为你的罪行惩罚你。 This question详细介绍了这一主题。