gpt4 book ai didi

Maven Tomcat 使用配置文件部署插件

转载 作者:行者123 更新时间:2023-11-28 22:26:33 25 4
gpt4 key购买 nike

我试图在我的项目 pom.xml 文件中使用配置文件来控制将我的 war 文件部署到特定服务器。例如,我有一个本地配置文件和一个开发服务器配置文件。这是我设置个人资料的方式

<profiles>

<profile>
<id>local</id>
<activation>
<activeByDefault>true</activeByDefault>
<property>
<name>target</name>
<value>local</value>
</property>
</activation>
...
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<url>http://10.16.21.60:8080/manager/text</url>
<server>localTomcat</server>
<path>/</path>
</configuration>
</plugin>
</plugins>
</build>
</profile>

<profile>
<id>dev</id>
<activation>
<property>
<name>target</name>
<value>dev</value>
</property>
</activation>
...
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<url>http://devserverurl:8080/manager/text</url>
<server>devTomcat</server>
<path>/</path>
</configuration>
</plugin>
</plugins>
</build>
</profile>

我在打电话

mvn org.apache.tomcat.maven:tomcat7-maven-plugin:2.2:deploy

当我尝试这个时,我可以看到,而不是尝试连接到我的配置中提供的 IP 地址 10.16.21.60 , 它试图连接到 localhost .我有两个 devTomcatlocalTomcat在我的本地定义 settings.xml包含用户名和密码的文件。

如果我然后添加 -X我可以在插件的调试输出中看到更多信息的选项(已添加强调)

    [DEBUG] Configuring mojo org.apache.tomcat.maven:tomcat7-maven-plugin:2.2:deploy from plugin realm ClassRealm[plugin>org.apache.tomcat.maven:tomcat7-maven-plugin:2.2, parent: sun.misc.Launcher$AppClassLoader@5c647e05]    [DEBUG] Configuring mojo 'org.apache.tomcat.maven:tomcat7-maven-plugin:2.2:deploy' with basic configurator -->    [DEBUG]   (f) charset = ISO-8859-1    [DEBUG]   (f) contextFile = ....    [DEBUG]   (f) ignorePackaging = false    [DEBUG]   (f) mode = war    [DEBUG]   (f) packaging = war    [DEBUG]   (f) path = ...    [DEBUG]   (f) update = false    [DEBUG]   (f) url = http://localhost:8080/manager/text    [DEBUG]   (f) version = 2.2    [DEBUG]   (f) warFile =  ...    [DEBUG]   (f) settings = org.apache.maven.execution.SettingsAdapter@61874b9d    [DEBUG] -- end configuration --    [INFO] Deploying war to http://localhost:8080/...      [DEBUG] No server specified for authentication - using defaults

似乎没有遵守我的配置设置!我认为这可行的方式是自local配置文件已激活,它将使用该配置。

我也曾尝试简单地在我的 <build> 中定义插件部分,没有配置文件,具有相同的效果。它总是尝试连接到 http://localhost:8080没有身份验证。

可能值得注意的是,我也在使用 gwt-maven-plugin对于这个项目,我不知道这是否会干扰 tomcat 插件配置。

最佳答案

好的,原来我为插件使用了错误的 groupID。这不是

<groupId>org.codehaus.mojo</groupId>

<groupId>org.apache.tomcat.maven</groupId>

现在像冠军一样工作!

关于Maven Tomcat 使用配置文件部署插件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42566030/

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