gpt4 book ai didi

tomcat - Maven 部署到多个 Tomcat 服务器

转载 作者:行者123 更新时间:2023-11-28 21:44:23 26 4
gpt4 key购买 nike

可以编写的使用maven向多个tomcat服务器部署war的最小示例是什么?

我已经尝试了以下 URL 并询问了邮件列表,但没有提出任何简短且简单的方法。

该示例应该在示例中某处定义了服务器(带有示例用户名/密码)

最佳答案

Markus Lux 的想法也可以通过配置文件管理应用于 Maven2 解决方案:

<build>
<plugins>
<plugin>
<groupId>org.codehaus.cargo</groupId>
<artifactId>cargo-maven2-plugin</artifactId>
</plugin>
</plugins>
...
</build>
<profiles>
<profile>
<id>env-foo1</id>
<!-- Activated when -Denv=foo1 is given as parameter. -->
<activation>
<property>
<name>env</name>
<value>foo1</value>
</property>
</activation>
<properties>
<deploy.env>xxx</deploy.env>
<tomcat.manager>http://foo1/manager</tomcat.manager>
<tomcat.manager.username>foo</tomcat.manager.username>
<tomcat.manager.password>bar</tomcat.manager.password>
</properties>
</profile>
<profile>
<id>env-foo2</id>
<!-- Activated when -Denv=foo2 is given as parameter. -->
<activation>
<property>
<name>env</name>
<value>foo2</value>
</property>
</activation>
<properties>
<deploy.env>dev</deploy.env>
<tomcat.manager>http://foo2/manager</tomcat.manager>
<tomcat.manager.username>foo</tomcat.manager.username>
<tomcat.manager.password>bar</tomcat.manager.password>
</properties>
</profile>
...
</profiles>

然后,您只需运行 X 次 mvn 命令,并使用适当的参数(-Denv=foo1-Denv=foo2,...)


除此之外,您还可以使用 Hudson 的 Matrix 功能来增强此解决方案。持续集成服务器。我对这个功能做了简短的解释 here .

基本上,您只需在 Hudson 中定义一个“普通”Maven2 作业,使用 Matrix 功能,您可以要求 Hudson 多次运行该作业,每个环境一次。换句话说,您创建 Hudson 作业,然后使用 env 参数的所有可能值定义“环境轴”:

  • foo1
  • foo2
  • foo3
  • ...

然后 Hudson 将使用 mvn 命令和参数 -Denv=foo1 构建应用程序。构建完成后,它将构建相同的应用程序,但参数 -Denv=foo2,等等......

这样,Hudson 将在每个环境中部署您的应用程序...

我希望我的解决方案能帮助您实现目标...

关于tomcat - Maven 部署到多个 Tomcat 服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/732275/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com