Maven:如何组装具有多个环境的捆绑包
Posted
技术标签:
【中文标题】Maven:如何组装具有多个环境的捆绑包【英文标题】:Maven: how to assemble a bundle with multiple environments 【发布时间】:2014-03-25 09:22:57 【问题描述】:我想组装一个大包,其中包含一些常见的二进制文件和配置设置以及特定于环境的东西。
例如:
* lib
* bin
* conf
* env -> uat1 -> conf
* env -> uat2 -> conf
* env -> uat3 -> conf
* env -> uat4 -> conf
只要特定环境中包含的文件集不重叠,就可以使用 Maven 组件轻松完成。
例如,如果我有:
uat1: file_alpha, file_beta, file_uat1
uat2: file_alpha, file_beta, file_uat2
uat3: file_delta, file_gamma, file_uat3
uat4: file_delta, file_gamma, file_uat4
我想在单个文件中配置通用文件集。例如。 (至于文件集):
uat1uat2: file_alpha, file_beta
uat1: [uat1uat2], file_uat1
uat2: [uat1uat2], file_uat2
uat3uat4: file_delta, file_gamma
uat3: [uat3uat4], file_uat3
uat4: [uat3uat4], file_uat4
不幸的是,我发现 Maven 不支持子组件或参数化组件(对于 uat1,我将文件放入 /env/uat1/conf,对于 uat2,我将文件放入 /env/uat2/conf)。
什么是解决我的部署需求的解决方案?
【问题讨论】:
【参考方案1】:不确定我是否完全理解你的问题,所以这里只回答一半。
我使用这个迭代器插件来捆绑我的环境。也许它可以帮助你?
http://khmarbaise.github.io/iterator-maven-plugin/
【讨论】:
以上是关于Maven:如何组装具有多个环境的捆绑包的主要内容,如果未能解决你的问题,请参考以下文章
使用firebase iOS swift创建具有相同捆绑ID的多个环境?
适用于 iOS 应用程序的具有多个捆绑标识符的 URL 类型
错误 ITMS-90685:“CFBundleIdentifier 冲突。有多个捆绑包”