java - OpenShift Pro - Tomcat 正在运行但应用程序未启动

标签 java openshift tomcat8

我已升级到 OpenShift Pro,并且正在尝试让我自己的 Web 应用程序之一正常运行。

源代码位于 GitHub 上,我从本地 IDE 推送的任何代码都会导致构建,因此一切看起来都正常。

Tomcat正在运行,当我输入url /docs时我可以看到它。但我的应用程序没有运行。

日志显示(为了清晰起见,进行了缩写):

Starting Servlet Engine: Apache Tomcat/8.0.18
Deploying web application directory /deployments/manager
Deployment of web application directory /deployments/manager has finished in 1,762 ms
Deploying web application directory /deployments/docs
Deployment of web application directory /deployments/docs has finished in 514 ms
Deploying web application directory /deployments/host-manager
Deployment of web application directory /deployments/host-manager has finished in 471 ms
Starting ProtocolHandler ["http-apr-8080"]
Server startup in 2815 ms

如您所见,ma​​nagerdocshost-manager 都已启动,但我希望在之后看到类似以下内容启动 Servlet 引擎行:

Deploying web application archive /deployments/ROOT.war
Deployment of web application archive /deployments/ROOT.war has finished in 2,560 ms

请注意,OpenShift 应用程序名称与我本地的Eclipse 项目名称不同。当我在本地运行此 Eclipse 项目时,上下文为“stripes”,请求类似于 localhost:8080/stripes/Test.action

有什么想法吗?

我是不是错过了什么?

任何帮助将不胜感激...

最佳答案

看起来在这种情况下,在 /tmp/src/target 目录中找不到构建的 ROOT.war 并由 s2i 镜像自动部署。

这可能有点难以发现,因为在这种情况下构建日志只是缺少一行。如果构建的 war 文件位于正确的位置,您应该在日志中看到一条消息,表明 ROOT.war 文件(或任何其他名称,如果未部署在根上下文中)已被复制到/opt/webserver/webapps/ 目录,位于“从...复制所有目标 war 工件”行下方,例如:

(...)
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 1:02.946s
[INFO] Finished at: Fri Sep 08 13:59:42 UTC 2017
[INFO] Final Memory: 18M/288M
[INFO] ------------------------------------------------------------------------
Copying all target war artifacts from /home/jboss/source/target directory into /opt/webserver/webapps for later deployment...
'/home/jboss/source/target/ROOT.war' -> '/opt/webserver/webapps/ROOT.war'
(...)

关于java - OpenShift Pro - Tomcat 正在运行但应用程序未启动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46296543/

相关文章:

java - Tomcat日志错误: java.lang.NoSuchMethodException: int.<init>() in my SpringMVC project

java - 将 jar 文件中的目录保存到用户磁盘

java - 如何在Java中分别打印证书的公钥长度和模数

node.js - Openshift 上的自定义 Node.js 版本

optimization - 如何在 OpenShift 3.6 中获取有关最新成功部署 pod 的信息

Django 将斜杠附加到 OpenShift 上的静态文件 URL

java - 在 Java 中使用 volatile 关键字的完整示例?

java - 这个不相交集数据结构的构造函数?

session 不活动时不调用 Java SessionDestroyed

tomcat - p6spy使得Tomcat8在使用时不再重新部署