![]() |
1
25
Markus Lux的理念也可以应用于Maven2解决方案,配置文件管理:
然后,您只需要运行x次 MVN 命令,有足够的参数( -DeV= Foe1 , -DeV= ,…) 除此之外,还可以使用 Hudson 持续集成服务器。我对这个特性作了简短的解释 here . 基本上,您只需在Hudson中定义一个“正常”的Maven2作业,使用Matrix功能,您可以要求Hudson多次运行此作业,每个环境一次。换句话说,您创建了您的Hudson作业,然后定义了“环境轴”,其中包含了 埃恩 参数:
然后,Hudson将使用 MVN 命令和参数 -DeV= Foe1 。此生成完成后,它将生成相同的应用程序,但使用参数 -DeV= 等等… 这样,Hudson将在每个环境中部署您的应用程序… 我希望我的解决方案能帮助你实现你的目标… |
![]() |
2
8
关于使用多个配置文件,生命周期似乎重复了某些步骤——例如,当使用由变量激活的配置文件时,测试的数量增加了一倍。我们发现使用Catalina Ant库更有效;)而且更“最少”。使用“executions”元素将“run”目标附加到生命周期阶段以简化它,或者在package:mvn package antrun:run之后运行 您可以对Ant-Contrib库进行一些改进,并创建一个包含服务器列表的for循环,但是这里有两个硬编码服务器URL的静态配置。
上面使用的catalina ant的特定版本是手动部署到我们的分布式maven存储库中的,可以在tomcat distribution的lib目录中找到。 |
![]() |
3
2
这是一个很晚才回答的老问题,但我相信人们会对此感兴趣。我刚刚实现了使用Maven和Ant任务运行多个部署。秘密是使用一个macrodef(对于我来说是2个,因为我在jetty中热部署了我的应用程序,需要传输一个war和一个xml文件),并使用一个ant属性文件:
然后您的属性文件需要类似于:
等。。。在每个服务器的选项块上配置
诀窍是,macrodef属性使用@作为优先于Ant中的属性评估$的优先级。 |
![]() |
4
1
也许“最简单”的解决方案根本不是最简单的。如果在Maven中这样做有问题,请尝试使用Ant:创建两个不同的部署任务(每个服务器一个)和另一个将它们作为依赖项的任务。有几个例子说明如何使用Ant部署到Tomcat服务器。 Just google them . 完成这项工作后,您需要将新的Ant任务集成到Maven中,而使用 antrun 插件。 |
![]() |
5
0
这个答案适用于码头和稍微不同的情况,但您可能会发现它很有用。 在之前的一个项目中,我们使用了Jetty,所以我编写了一个简单的Jetty Deployer模块,它将定期扫描Maven存储库,并在新工件可用时下载和部署它们。这在一个小型的登台和开发机器集群上运行得很好。 你可以在谷歌的代码中找到 Polar Rose Jetty Maven Deployer 项目。 请注意,我们只为开发和登台服务器做了这项工作。在我看来,生产应用程序永远不应该自动升级。 |
![]() |
gigashark · 部署生成的Maven Spring项目不起作用 6 年前 |
![]() |
Tristan Le Gacque · ApachePOI:NoClassDefFoundError:org。阿帕奇。poi。openxml4j。例外情况。invalidFormatException无效格式异常 6 年前 |
|
Carlos Chávez · Tomcat/Hibernate配置 6 年前 |