Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/vim/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何避免运行多个ApacheTomcat实例_Java_Apache_Tomcat - Fatal编程技术网

Java 如何避免运行多个ApacheTomcat实例

Java 如何避免运行多个ApacheTomcat实例,java,apache,tomcat,Java,Apache,Tomcat,我在linux环境中使用apache-tomcat-7.0.41。在正常情况下(当tomcat在webapps目录中没有任何应用程序,即war文件时),仅当tomcat的一个实例可以运行时。若我们尝试使用启动脚本运行多个tomcat实例,那个么进程会因为端口绑定异常而自动关闭 但当我把我的应用程序的war文件放在webapps目录中时,每次启动脚本运行时,启动脚本都会实例化一个新的tomcat实例。例如,如果我运行2次启动脚本,那么在jps 2中会显示引导过程 我也无法使用关机脚本停止tomca

我在linux环境中使用apache-tomcat-7.0.41。在正常情况下(当tomcat在webapps目录中没有任何应用程序,即war文件时),仅当tomcat的一个实例可以运行时。若我们尝试使用启动脚本运行多个tomcat实例,那个么进程会因为端口绑定异常而自动关闭

但当我把我的应用程序的war文件放在webapps目录中时,每次启动脚本运行时,启动脚本都会实例化一个新的tomcat实例。例如,如果我运行2次启动脚本,那么在jps 2中会显示引导过程

我也无法使用关机脚本停止tomcat

我只想运行一个tomcat实例。如果任何人试图运行多个实例,它应该自动关闭

有人能告诉我如何处理这种情况吗

任何建议都会很有帮助

提前谢谢

当我运行tomcat时,其pid为8320,并且它使用以下端口: tcp 0:ffff:127.0.0.1:8005::*侦听8320/java
tcp 0:::8009::*侦听8320/java
tcp 0:22222:::*侦听8320/java
tcp 0:::8080::*侦听8320/java
udp 0:::40161:::*8320/java
udp 0:ffff:192.168.122.108:11007:::*8320/java

调用关机脚本后,引导过程仍显示在jps中。它使用以下端口: udp 0:::40161:::*8320/java

22222和11007端口由我的应用程序使用,这是关机,但只有一个udp端口即使在调用关机脚本后也不会释放


知道怎么做吗?

修改启动脚本,使其不会每次都创建新的tomcat进程。

修改启动脚本,使其不会每次都创建新的tomcat进程。

您可以通过将tomcat作为服务/守护进程启动来解决问题。
服务脚本不应允许您启动已启动的服务


您可以通过将tomcat作为服务/守护进程启动来解决问题。
服务脚本不应允许您启动已启动的服务


这很奇怪,Tomcat没有预料到-除非有人更改某些配置-它应该可以顺利工作

我建议不要深入研究这个问题,而是尝试卸载并重新安装Tomcat。如果使用-try+/-1版本(6.0.x/8.0.0-RC5)时当前版本u r不起作用。另外,请确保没有其他软件/实用程序正在运行导致此问题


弗雷德里克的选择也值得一试——以防上面提到的结果不起作用

这很奇怪,Tomcat没有预料到-除非有人更改一些配置-它应该可以顺利工作

我建议不要深入研究这个问题,而是尝试卸载并重新安装Tomcat。如果使用-try+/-1版本(6.0.x/8.0.0-RC5)时当前版本u r不起作用。另外,请确保没有其他软件/实用程序正在运行导致此问题


弗雷德里克的选择也值得一试——以防上面提到的结果不起作用

为什么你没有得到已经在使用的端口异常。。。默认情况下,它总是使用8080。。。第一次和第二次使用的端口是什么?您是否在conf/server文件中有一些设置,说明如果8080正在使用,请使用另一个端口?在上面的帖子中添加了更多的描述,请查看它的行为。为什么您没有得到已在使用的端口异常。。。默认情况下,它总是使用8080。。。第一次和第二次使用的端口是什么?您是否在conf/server文件中有一些设置,说明如果8080正在使用,请使用另一个端口?在上面的文章中添加了更多的描述,请查看它的运行情况。需要什么类型的修改?任何细节?需要什么类型的修改?有什么细节吗?是的,你可以试试那个选项!是的,你可以试试这个选择!