如何使用Maven构建工件的多个配置(例如WAR等)?

时间:2010-09-13 10:32:43

标签: java internationalization maven maven-assembly-plugin profiles

由于我们当前某些应用程序的模块化特性,我们需要了解如何设置Maven以生成相同工件的多个配置(在我们的示例中为WAR文件),BOTH部署级别的组合(开发,测试,制作)和本地化(gb,fr,es等)?我们正在寻找类似的东西:

artifact-gb-dev.war
OR
artifact-fr-test.war (etc., etc.)

我们已经了解 Maven'构建配置文件',它们似乎符合部署环境标准,以及' maven-assembly-plugin ',可能会解决国家/国际化问题但是是否可以将两者结合起来(即将法语资源文件集成到生产级别的构建中)?

我们当前目录结构的一个示例可能是:

..\gb
     \dev
     \test
     \production  
..\fr
     \dev
     \test
     \production  
..\es
     \dev
     \test
     \production

例如,构建可能需要(一个)法语开发版本(fr / dev)或所有生产版本(gb-fr-es-etc / prod)。

我们是Maven的新手,并且由于预先配置的Maven原型及其依赖关系管理提供的快速提升,我们决定尝试一下。到目前为止,我们已经将Ant用于构建。

由于

理查德

1 个答案:

答案 0 :(得分:2)

看一下maven war覆盖机制。它基本上允许你有一个通用的pom并在它上面放置叠加(例如每个国家)来构建任意数量的战争。

我过去曾使用此功能为多个国家/地区创建一个网站(平台),每个国家/地区的差异很小。

请参阅:http://maven.apache.org/plugins/maven-war-plugin/examples/war-overlay.html