gpt4 book ai didi

eclipse - Tomcat 在 Maven 项目的/target 目录下运行 WAR 文件

转载 作者:行者123 更新时间:2023-12-04 15:03:52 24 4
gpt4 key购买 nike

我正在使用 Java 和 Maven 构建系统开发 Web 应用程序,Web 服务器是 Tomcat 7.0.12。通过Maven构建命令将整个项目打包成一个WAR文件到\target目录后,我必须将它复制到Tomcat home的webapps文件夹才能运行它。非常不方便,尤其是当我修改了一些源文件时,因为我必须再次执行所有这些操作(构建,复制到Tomcat,运行它)。关于这个问题,我研究了一些关于 Maven、Tomcat、Eclipse 的文章,但没有结果。
请你帮助我好吗:
1、如何让Tomcat直接运行Maven命令构建的项目目标目录下的WAR文件?不需要复制/粘贴 WAR 文件并重新启动 Tomcat?
2、如何配置Tomcat调试Eclipse上的web应用程序?
非常感谢!

顺便说一句,我已经多次阅读并尝试配置 Tomcat、Maven 和 pom 文件。但是我不知 Prop 体的配置是什么,因为建议太多了!你能为我提供一个特定的配置示例吗?
这是我的配置文件:

Tomcat tomcat-users.xml

  <role rolename="manager-gui"/>
<user username="admin" password="" roles="manager-gui"/>
**<role rolename="manager"/>
<user username="admin" password="" roles="manager"/>**
<role rolename="admin-gui"/>
<user username="admin" password="" roles="admin-gui"/>

Maven 设置.xml


Tomcat
行政




以及项目的 pom.xml 文件:
<build>
<finalName>my-project</finalName>
<defaultGoal>package</defaultGoal>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>tomcat-maven-plugin</artifactId>
<version>1.1</version>
<configuration>
<server>tomcat</server>
<warFile> ${project.build.directory}/${project.build.finalName}.war</warFile>
</configuration>
</plugin>
</plugins>
// Other plugins
</build>

更多细节:
如果我在启动 Tomcat 实例之前运行 mvn tomcat:deploy,返回的错误是“无法调用 Tomcat 管理器:连接被拒绝:连接”。
否则,如果在调用 mvn tomcat:deploy 之前已经启动了 Tomcat 实例,则错误为“无法调用 Tomcat 管理器:服务器返回 HTTP 响应代码:403 for URL: http://localhost:8080/manager/deploy?path=%2Fmy-project&war= ...”

最佳答案

有几种方法可以做到这一点。

tomcat maven 插件http://mojo.codehaus.org/tomcat-maven-plugin/为您提供了一种从 maven 直接部署到 tomcat 的方法。您必须先配置您的 tomcat 用户。见 http://tomcat.apache.org/tomcat-7.0-doc/config/realm.html有关如何配置用户的说明。

对于调试,您可以使用在 http://wiki.apache.org/tomcat/FAQ/Developing 中指定的参数启动 tomcat。

另一种方法是将 tomcat 配置为指向您的 war 。见 http://tomcat.apache.org/tomcat-7.0-doc/config/context.html特别是 文档库 范围。

编辑 1
根据修订后的问题,http 403 是禁止的,这意味着您没有正确进行身份验证。

将您的 tomcat-users.xml 更改为如下所示:





您需要在 pom.xml 中添加对用户名/密码的引用。
您的 settings.xml 必须包含(基于您的配置)

<server>
<id>tomcat</id>
<username>admin</username>
<password></password>
</server>

有个好页面 http://www.avajava.com/tutorials/lessons/how-do-i-deploy-a-maven-web-application-to-tomcat.html这更充分地解释了它。但是,这些信息可能已经过时。

关于eclipse - Tomcat 在 Maven 项目的/target 目录下运行 WAR 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5687654/

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