java - 如何使用 Maven 构建 Artifact 的多个配置(例如 WAR 等)?

标签 java internationalization maven maven-assembly-plugin profiles

由于我们当前一些应用程序的模块化性质,我们需要了解如何设置 Maven 以生成同一 Artifact (在我们的例子中是 WAR 文件)的多个配置,两个部署级别的组合(开发、测试、生产)和本地化(gb、fr、es 等)?我们正在寻找类似的东西:

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

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

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

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

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

我们是 Maven 的新手,由于预配置的 Maven 原型(prototype)及其依赖管理提供的快速提升,我们决定尝试一下。到目前为止,我们一直使用 Ant 进行构建。

谢谢

理查德

最佳答案

看看maven war 覆盖机制。它基本上允许您拥有一个通用的 pom 并在其上放置叠加层(例如针对每个国家/地区)以构建任意数量的 war 。

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

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

关于java - 如何使用 Maven 构建 Artifact 的多个配置(例如 WAR 等)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3699568/

相关文章:

java - Java路径困惑-我可能会使情况更糟

ruby-on-rails - 在 Ruby/Rails 中使用特定排序规则对值进行排序

javascript - I18N/Angular JS/Javascript 文本

java - 从 java 设置 MySql 连接的问题

java - 为什么让 `This page isn' t 工作... ERR_TOO_MANY_REDIRECTS`?

java - Eclipse + Maven -> eclipse.ini

java - 带返回值的递归方法

java - 通过 Java 将 Ubuntu 10.4 连接到 MS SQL DB 的问题

javascript - Angular 2 i18n 动态/即时翻译

Java FX 应用程序安装在同一目录中