部署 WAR 文件会在 Tomcat 上为我提供 404 状态代码?
2022-09-01 02:09:51
我对Tomcat很陌生。我刚刚设法构建了一个项目并将其导出为WAR文件。我尝试手动将WAR文件复制到Tomcat文件夹,然后重新启动。它创建了文件夹结构和所有内容,但是当我尝试访问应用程序时,我得到了一个404状态代码。我尝试通过Tomcat管理面板部署它,但我看到了相同的行为。我做了什么根本性的错误吗?
我对Tomcat很陌生。我刚刚设法构建了一个项目并将其导出为WAR文件。我尝试手动将WAR文件复制到Tomcat文件夹,然后重新启动。它创建了文件夹结构和所有内容,但是当我尝试访问应用程序时,我得到了一个404状态代码。我尝试通过Tomcat管理面板部署它,但我看到了相同的行为。我做了什么根本性的错误吗?
假设您对Tomcat安装具有完全权限,请尝试转到,如果您不知道进入该区域的密码,请在目录中查找该文件,并且应该具有该文件。如果它中没有条目,那么您将需要向其添加如下所示的条目:http://localhost:8080/manager/html/
tomcat-users.xml
${tomcat-installation}/conf
<user username="username" password="password" roles="admin,manager" />
查看您的应用程序是否显示在该屏幕中,如果显示,请单击链接,然后查看这是否能将您带到任何地方。如果没有,那么我建议遵循ifishers的建议,并查看日志文件以查看它是否列出了任何错误。
但长话短说,很可能你的项目搞砸了web.xml
在最近,如果JAVA_HOME指向的 Java 版本比 WAR 中的代码更早,则可能会发生这种情况。Tomcat 可能会使用JAVA_HOME来确定它在运行启动后显示JRE_HOME.bat在 Tomcat 的 BIN 目录中。虽然Tomcat可能对它所获得的Java版本感到满意,但对于应用程序来说,这可能还不够。在我的情况下,Tomcat 8.0.49与JDK1.7一起运行良好,而应用程序根本没有初始化(是的,它是一个Spring Boot应用程序,WAR正在解压缩,但仅此而已) - 没有给出任何错误。将JAVA_HOME设置为JDK1.8的位置后,问题就解决了。