Java Tomcat 7没有';如果没有关闭,进程是否继续运行?

Java Tomcat 7没有';如果没有关闭,进程是否继续运行?,java,tomcat,Java,Tomcat,我开始使用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.ma

我开始使用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.sh和startup.sh来完成

如果我尝试使用

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


您可以通过PID强制关机

编辑

设定

CATALINA_PID=path
变量设置为本地路径

卡塔琳娜

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

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

../tomcat/bin/shutdown.sh -force
如果脚本不能正常停止Tomcat,将使用
kill
通过PID停止进程

更新:

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

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


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

nircmd.exe win close title "Tomcat"

我曾经有过这样的不幸:由于错误的身份验证机制,一个页面运行无限的重定向循环

它最终降低了整个服务器的速度,但也使我无法正常关闭它。最后,我不得不像维扎曼尼罗所描述的那样使用暴力


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

到底是哪个tomcat版本?您是否已经部署了任何东西,或者这只是下载包中的普通安装?还有,您使用的是哪个JRE版本(
/usr/bin/java-version
)?您可以发布关机挂钩的日志吗?注意catalina.bat说:不要在这个脚本中设置变量。而是将它们放在CATALINA_BASE/bin中的脚本setenv.sh中,以保持自定义设置的独立性。。CATALINA_PID应该设置在那里。
../tomcat/bin/shutdown.sh -force
nircmd.exe win close title "Tomcat"