maven-2 - 在CI/Hudson支持下为多个环境[prod,test,dev]生成 Artifact 的Maven最佳实践?

标签 maven-2 maven maven-assembly-plugin

我有一个需要部署到多个环境(产品,测试,开发)的项目。主要区别主要在于配置属性/文件。

我的想法是使用配置文件和覆盖图来复制/配置专用输出。但是如果要使用专用分类器(例如:“ my-app-1.0-prod.zip/jar”,“ my-app-1.0-dev.zip/jar”)生成多个工件,我就会陷入困境,还是我应该创建多个项目,为每个环境创建一个项目?
我应该使用maven-assembly-plugin为每个环境生成多个工件吗?
无论如何,我将需要立即生成所有这些文件,从而使配置文件看起来不合适...仍然感到困惑:(

任何提示/示例/链接都将受到欢迎。

作为附带问题,我还想知道如何在CI Hudson / Bamboo中实现此目的,以针对所有环境生成并部署这些生成的工件,并将其部署到适当的服务器上(例如:使用SCP Hudson插件)?

最佳答案

我更喜欢将配置文件与应用程序分开打包。这使您可以运行完全相同的应用程序,并在运行时提供配置。它还允许您在构建时不知道需要的环境之后,生成配置文件。例如CERT
我使用“汇编”工具将每个域的配置文件压缩为命名文件。

关于maven-2 - 在CI/Hudson支持下为多个环境[prod,test,dev]生成 Artifact 的Maven最佳实践?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2424118/

相关文章:

java - Maven 无法执行 jar 项目,因为传递依赖性困惑

maven-2 - Maven 包 .bat 脚本 : how to add a delay?

maven-2 - 一个 Unicode Maven ArtifactId

maven:多模块项目组装成单个jar

maven - 在 src 编译之后和打包之前调用 maven exec 插件

java - maven2 war项目依赖jar项目

java - 如何使用 MVN 构建 hortonworks/simple-yarn-app

java - eclipse :eclipse in maven?后如何执行代码

java - Maven:如何在父 POM 中引用子项目的构建目录?

java - 如何使用Maven项目在JAR中添加测试类