当前位置: 首页 > 知识库问答 >
问题:

Tomcat 7没有关闭,进程继续运行?

仲孙鸿畴
2023-03-14

我开始使用tomcat 7,

cd /opt/tomcat7/bin    
$/opt/tomcat7/bin ./startup.sh

它显示进程正在运行

root     23206  130  3.4 1323956 572880 pts/2  Sl   07:58   1:05 /usr/bin/java -Djava.util.logging.config.file=/opt/tomcat7/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Dspring.profiles.active=mongo1,maxListenersAllowed -DST_SERVER=mongo1 -Djava.endorsed.dirs=/opt/tomcat7/endorsed -classpath /opt/tomcat7/bin/bootstrap.jar:/opt/tomcat7/bin/tomcat-juli.jar -Dcatalina.base=/opt/tomcat7 -Dcatalina.home=/opt/tomcat7 -Djava.io.tmpdir=/opt/tomcat7/temp org.apache.catalina.startup.Bootstrap start

如果我用

$/opt/tomcat7/bin ./shutdown.sh

它传达了这个信息

Using CATALINA_BASE:   /opt/tomcat7
Using CATALINA_HOME:   /opt/tomcat7
Using CATALINA_TMPDIR: /opt/tomcat7/temp
Using JRE_HOME:        /usr
Using CLASSPATH:       /opt/tomcat7/bin/bootstrap.jar:/opt/tomcat7/bin/tomcat-juli.jar

但是如果我检查上面的进程,它仍然显示它正在运行。Tomcat没有关闭。我也使用root用户尝试过,但仍然没有成功。

手动我可以终止进程,但我想创建部署脚本,所以我想使用shutdown来完成。和创业。嘘

如果我尝试使用也会发生同样的事

/opt/tomcat7/bin/catalina.sh start
/opt/tomcat7/bin/catalina.sh stop

日志

Jul 23, 2014 8:26:17 AM org.apache.catalina.core.AprLifecycleListener init
INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/java/packages/lib/i386:/lib:/usr/lib
Jul 23, 2014 8:26:18 AM org.apache.coyote.AbstractProtocol init
INFO: Initializing ProtocolHandler ["http-bio-8081"]
Jul 23, 2014 8:26:18 AM org.apache.coyote.AbstractProtocol init
INFO: Initializing ProtocolHandler ["ajp-bio-8009"]
Jul 23, 2014 8:26:18 AM org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 361 ms
Jul 23, 2014 8:26:18 AM org.apache.catalina.core.StandardService startInternal
INFO: Starting service Catalina
Jul 23, 2014 8:26:18 AM org.apache.catalina.core.StandardEngine startInternal
INFO: Starting Servlet Engine: Apache Tomcat/7.0.53
Jul 23, 2014 8:26:18 AM org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory /opt/tomcat7/webapps/docs
Jul 23, 2014 8:26:18 AM org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory /opt/tomcat7/webapps/manager
Jul 23, 2014 8:26:18 AM org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory /opt/tomcat7/webapps/ROOT
Jul 23, 2014 8:26:18 AM org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory /opt/tomcat7/webapps/examples
Jul 23, 2014 8:26:18 AM org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory /opt/tomcat7/webapps/host-manager
Jul 23, 2014 8:26:18 AM org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory /opt/tomcat7/webapps/target
Jul 23, 2014 8:26:18 AM org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler ["http-bio-8081"]
Jul 23, 2014 8:26:18 AM org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler ["ajp-bio-8009"]
Jul 23, 2014 8:26:18 AM org.apache.catalina.startup.Catalina start
INFO: Server startup in 862 ms
Jul 23, 2014 8:26:42 AM org.apache.catalina.core.StandardServer await
INFO: A valid shutdown command was received via the shutdown port. Stopping the Server instance.
Jul 23, 2014 8:26:42 AM org.apache.coyote.AbstractProtocol pause
INFO: Pausing ProtocolHandler ["http-bio-8081"]
Jul 23, 2014 8:26:42 AM org.apache.coyote.AbstractProtocol pause
INFO: Pausing ProtocolHandler ["ajp-bio-8009"]
Jul 23, 2014 8:26:42 AM org.apache.catalina.core.StandardService stopInternal
INFO: Stopping service Catalina
Jul 23, 2014 8:26:42 AM org.apache.coyote.AbstractProtocol stop
INFO: Stopping ProtocolHandler ["http-bio-8081"]
Jul 23, 2014 8:26:42 AM org.apache.coyote.AbstractProtocol stop
INFO: Stopping ProtocolHandler ["ajp-bio-8009"]
Jul 23, 2014 8:26:42 AM org.apache.coyote.AbstractProtocol destroy
INFO: Destroying ProtocolHandler ["http-bio-8081"]
Jul 23, 2014 8:26:42 AM org.apache.coyote.AbstractProtocol destroy
INFO: Destroying ProtocolHandler ["ajp-bio-8009"]

共有3个答案

赵英资
2023-03-14

我曾经遇到过一个页面由于身份验证机制错误而运行无限重定向循环的不幸。

它最终降低了整个服务器的运行速度,但也让我无法优雅地关闭它。最后,我不得不像维扎曼尼洛描述的那样使用暴力。

关键是,服务器进程中可能有可疑的东西无法正常完成。

端木阳荣
2023-03-14

如果您在windows中并使用便携式tomcat,您可以使用nircmd程序工具,并通过标题控制台窗口关闭,而不是通过PID停止。下载此工具后,只需执行以下操作:

nircmd.exe win close title "Tomcat"
龙晟睿
2023-03-14

您可以通过PID强制关机。

编辑

..tomcat/bin/catalina.sh

然后设定

CATALINA_PID=path

变量设置为本地路径。

CATALINA_PID

(可选)使用start(fork)时,应包含catalina启动java进程pid的文件路径

然后可以使用-force标志关闭Tomcat

../tomcat/bin/shutdown.sh -force

如果脚本不能正常停止Tomcat,它将使用kill通过PID停止进程。

更新:

根据Joshua Taylor的评论,为运行tomcat存储附加变量的推荐方法是setenv。*脚本。

看看(3.4)在tomcat运行文档中使用“setenv”脚本(可选,推荐)部分

https://tomcat.apache.org/tomcat-7.0-doc/RUNNING.txt

 类似资料:
  • 我正在使用VS代码来编辑和运行Android项目。模拟器将打开,我看到程序启动,然后是程序的编译和运行。但是,在关闭了Android模拟器和VS代码之后,OpenJDK继续运行。 这是正常行为吗?有没有办法在模拟器/VSC退出后关闭OpenJDK JRE? 我主要关心的是电池寿命,因为我正在使用笔记本电脑。 系统:Windows 10 Pro(1909) Visual Studio代码版本:1.4

  • 好吧,我是Android Studio的新手,我在玩一个愚蠢的屁噪音应用程序。我的第一次尝试是一个按钮发出噪音。现在我有三个按钮,但应用程序无法在模拟器中打开。它只说应用程序一直在关闭。我试着用谷歌搜索log cat中的每一个错误,但到目前为止没有任何效果。我尝试了两个不同的模拟器,但最初它工作得很好,所以不确定要改变什么。声音文件是。我不确定这是否重要。 这是我的原木猫 04-10 11:41:

  • 我是一个对使用python相当陌生的爱好者。自从我安装 Pygame 以来已经一周了,经过多次尝试,当我运行任何程序时,我仍然无法启动或打开 Pygame 窗口。我已经看了尽可能多的教程,并阅读了我能找到的关于类似问题的所有文章。我已经复制了在其他网站上找到的所有解决方案,但问题仍然存在。然而,更奇怪的是,我正在使用的IDE(Pycharm)很少输出错误消息,而是简单地继续运行,但从未启动Pyga

  • 问题内容: PHP中是否可以关闭连接(本质上告诉浏览器没有更多数据可用)但是可以继续处理。我正在考虑的特定情况是,我想提供缓存的数据,然后,如果缓存已过期,我仍然会提供缓存的数据以快速响应,关闭连接,但继续进行处理以重新生成并缓存新的数据数据。本质上,唯一的目的是使网站显得更具响应性,因为在用户等待内容重新生成时不会偶尔出现延迟。 更新: PLuS对我一直在寻找最接近的答案。为了澄清几个人,我正在

  • 我知道我过去解决过这个问题,但今天似乎做不到。我写了一个非常简单的程序,它产生20只海龟,让它们随机移动。我点击我的设置,它们就出现了。然后我点击去,我得到一个勾。我必须一遍又一遍地点击去才能移动。 当我单击一次go时,如何让它继续运行? 在“界面”选项卡上,我设置了“查看更新”选项。

  • 问题内容: 我的程序包括3个主要的“部分”。主要功能,登录表单和应用程序表单。主要功能应执行以下操作:打开“登录”表单,等待其关闭,然后打开“应用程序”表单。我无法让等待的部分开始工作,或者更确切地说,我不知道该怎么做。 有人告诉我改用JDialog并使用,但是用这种方法,登录表单不会出现在任务栏上,我认为这很糟糕。 我考虑的另一件事是在登录关闭后从“登录”内部打开该应用程序,但这感觉设计不好,因