我正在开发一个项目,该项目使用Maven for build和Artifactory作为Maven存储库,其中发布了构建。当只有一组配置时,一切正常 - 创建构建并发布到Artifactory。
我需要能够为包含特定于环境的资源(MongoDB连接URL和log4j2 xml)的每个环境创建一个包含必要二进制文件和一个附加工件的WAR。 Jenkins中的部署作业应将WAR和特定于环境的资源JAR部署到服务器。
我被困在创建和发布工件中。我试过并拒绝的方法是:
似乎Maven + Artifactory不适合多环境场景,因为似乎没有任何直接的解决方案。我错过了什么吗?我应该采取什么方法?
更新 我使用https://github.com/khmarbaise/multienv-maven-plugin解决了这个问题。这让我可以创建一个WAR和多个JAR文件: - myapp.0.1.0.war - myapp.0.1.0-dev.jar - myapp.0.1.0-qa.jar - myapp.0.1.0-prod.jar
我陷入了下一步。安装阶段将JAR安装为WAR,然后部署阶段将它们作为WAR上载到Artifactory。有什么方法可以将包装类型保持为JAR的JAR?