org.apache.catalina.core.StandardServer.await A valid shutdown command was received via the shutdown

本文详细记录了一次Tomcat服务器异常关闭的问题排查过程。通过分析日志,发现异常关闭与shutdown端口被占用有关。文章提供了修改server.xml中shutdown端口的方法,成功解决了Tomcat频繁异常关闭的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

tomcat总是异常关闭:

23-Apr-2019 18:43:53.376 INFO [main] org.apache.catalina.core.StandardServer.await A valid shutdown command was received via the shutdown port. Stopping the Server instance.
23-Apr-2019 18:43:53.377 INFO [main] org.apache.coyote.AbstractProtocol.pause Pausing ProtocolHandler ["http-nio-8080"]
23-Apr-2019 18:43:53.429 INFO [main] org.apache.coyote.AbstractProtocol.pause Pausing ProtocolHandler ["ajp-nio-8009"]
23-Apr-2019 18:43:53.480 INFO [main] org.apache.catalina.core.StandardService.stopInternal Stopping service Catalina
23-Apr-2019 18:43:53.492 INFO [main] org.apache.coyote.AbstractProtocol.stop Stopping ProtocolHandler ["http-nio-8080"]
23-Apr-2019 18:43:53.493 INFO [main] org.apache.coyote.AbstractProtocol.stop Stopping ProtocolHandler ["ajp-nio-8009"]
23-Apr-2019 18:43:53.493 INFO [main] org.apache.coyote.AbstractProtocol.destroy Destroying ProtocolHandler ["http-nio-8080"]
23-Apr-2019 18:43:53.494 INFO [main] org.apache.coyote.AbstractProtocol.destroy Destroying ProtocolHandler ["ajp-nio-8009"]

 

找了很久的原因,发现是因为tomcat的shutdown的端口被占用了,修改conf的server.xml的shutdown端口就可以了。

<Server port="8005" shutdown="SHUTDOWN">
  <Listener className="org.apache.catalina.startup.VersionLoggerListener" />

Using CATALINA_BASE: "C:\Users\hw\AppData\Local\JetBrains\IntelliJIdea2024.1\tomcat\b47a5540-753d-496f-a7ac-2be863a0d0e1" Using CATALINA_HOME: "E:\java_dev\apache-tomcat-9.0.22" Using CATALINA_TMPDIR: "E:\java_dev\apache-tomcat-9.0.22\temp" Using JRE_HOME: "C:\Program Files\Java\jdk1.8.0_361" Using CLASSPATH: "E:\java_dev\apache-tomcat-9.0.22\bin\bootstrap.jar;E:\java_dev\apache-tomcat-9.0.22\bin\tomcat-juli.jar" 16-Jun-2025 19:58:07.775 璀﹀憡 [main] org.apache.tomcat.util.digester.Digester.endElement No rules found matching [Server/Service/Engine/Host/Contex] 16-Jun-2025 19:58:07.778 淇℃伅 [main] org.apache.catalina.startup.VersionLoggerListener.log Server.鏈嶅姟鍣ㄧ増鏈�: Apache Tomcat/9.0.22 16-Jun-2025 19:58:07.778 淇℃伅 [main] org.apache.catalina.startup.VersionLoggerListener.log Server.鏋勫缓: Jul 4 2019 14:20:06 UTC 16-Jun-2025 19:58:07.778 淇℃伅 [main] org.apache.catalina.startup.VersionLoggerListener.log Server version number: 9.0.22.0 16-Jun-2025 19:58:07.778 淇℃伅 [main] org.apache.catalina.startup.VersionLoggerListener.log OS Name: Windows 11 16-Jun-2025 19:58:07.778 淇℃伅 [main] org.apache.catalina.startup.VersionLoggerListener.log OS.鐗堟湰: 10.0 16-Jun-2025 19:58:07.778 淇℃伅 [main] org.apache.catalina.startup.VersionLoggerListener.log 缁�.閫�: amd64 16-Jun-2025 19:58:07.779 淇℃伅 [main] org.apache.catalina.startup.VersionLoggerListener.log Java 鐜鍙橀噺: C:\Program Files\Java\jdk1.8.0_361\jre 16-Jun-2025 19:58:07.779 淇℃伅 [main] org.apache.catalina.startup.VersionLoggerListener.log JVM 鐗堟湰: 1.8.0_361-b09 16-Jun-2025 19:58:07.779 淇℃伅 [main] org.apache.catalina.startup.VersionLoggerListener.log JVM.渚涘簲鍟�: Oracle Corporation 16-Jun-2025 19:58:07.779 淇℃伅 [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_BASE: C:\Users\hw\AppData\Local\JetBrains\IntelliJIdea2024.1\tomcat\b47a5540-753d-496f-a7ac-2be863a0d0e1 16-Jun-2025 19:58:07.779 淇℃伅 [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_HOME: E:\java_dev\apache-tomcat-9.0.22 16-Jun-2025 19:58:07.779 淇℃伅 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.config.file=C:\Users\hw\AppData\Local\JetBrains\IntelliJIdea2024.1\tomcat\b47a5540-753d-496f-a7ac-2be863a0d0e1\conf\logging.properties 16-Jun-2025 19:58:07.779 淇℃伅 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager 16-Jun-2025 19:58:07.779 淇℃伅 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcom.sun.management.jmxremote= 16-Jun-2025 19:58:07.779 淇℃伅 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcom.sun.management.jmxremote.port=1099 16-Jun-2025 19:58:07.780 淇℃伅 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcom.sun.management.jmxremote.ssl=false 16-Jun-2025 19:58:07.780 淇℃伅 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcom.sun.management.jmxremote.password.file=C:\Users\hw\AppData\Local\JetBrains\IntelliJIdea2024.1\tomcat\b47a5540-753d-496f-a7ac-2be863a0d0e1\jmxremote.password 16-Jun-2025 19:58:07.780 淇℃伅 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcom.sun.management.jmxremote.access.file=C:\Users\hw\AppData\Local\JetBrains\IntelliJIdea2024.1\tomcat\b47a5540-753d-496f-a7ac-2be863a0d0e1\jmxremote.access 16-Jun-2025 19:58:07.780 淇℃伅 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.rmi.server.hostname=127.0.0.1 16-Jun-2025 19:58:07.780 淇℃伅 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djdk.tls.ephemeralDHKeySize=2048 16-Jun-2025 19:58:07.780 淇℃伅 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.protocol.handler.pkgs=org.apache.catalina.webresources 16-Jun-2025 19:58:07.780 淇℃伅 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dignore.endorsed.dirs= 16-Jun-2025 19:58:07.782 淇℃伅 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.base=C:\Users\hw\AppData\Local\JetBrains\IntelliJIdea2024.1\tomcat\b47a5540-753d-496f-a7ac-2be863a0d0e1 16-Jun-2025 19:58:07.782 淇℃伅 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.home=E:\java_dev\apache-tomcat-9.0.22 16-Jun-2025 19:58:07.782 淇℃伅 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.io.tmpdir=E:\java_dev\apache-tomcat-9.0.22\temp 16-Jun-2025 19:58:07.782 淇℃伅 [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: [C:\Program Files\Java\jdk1.8.0_361\bin;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\Program Files\Java\jdk1.8.0_361\jre\bin;D:\hw\python3.8.5;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Windows\system32\config\systemprofile\AppData\Local\Microsoft\WindowsApps;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\WINDOWS\System32\OpenSSH\;C:\Program Files\Microsoft SQL Server\150\Tools\Binn\;C:\Program Files\Microsoft SQL Server\Client SDK\ODBC\170\Tools\Binn\;E:\java_dev\Maven\apache-maven-3.6.1\bin;E:\java_dev\MYSQL\Program Files\MySQL\MySQL Server 8.0\bin;E:\java_dev\node-v16.20.2-win-x64;C:\Program Files\Java\jdk1.8.0_361\bin;E:\java_dev\apache-tomcat-9.0.22\bin;E:\java_dev\apache-tomcat-9.0.22\lib;D:\hw\python3.8.5;D:\hw\pycharm\P鐗坧ycharm\PyCharm 2024.1.3\bin;;D:\hw\pycharm\PyCharm Community Edition 2023.2.3\bin;;C:\Users\hw\AppData\Local\Microsoft\WindowsApps;D:\JAVA\鐜閰嶇疆\IntelliJ IDEA Community Edition 2024.1\bin;;D:\JAVA\鐜閰嶇疆\IntelliJ IDEA 2023.3.4\bin;;D:\Visual Studio Code\Microsoft VS Code\bin;D:\nodejs;;C:\Users\hw\.lmstudio\bin;.] 16-Jun-2025 19:58:07.971 淇℃伅 [main] org.apache.coyote.AbstractProtocol.init 鍒濆鍖栧崗璁鐞嗗櫒 ["http-nio-8080"] 16-Jun-2025 19:58:07.990 淇℃伅 [main] org.apache.coyote.AbstractProtocol.init 鍒濆鍖栧崗璁鐞嗗櫒 ["ajp-nio-8009"] 16-Jun-2025 19:58:07.993 淇℃伅 [main] org.apache.catalina.startup.Catalina.load 鏈嶅姟鍣ㄥ湪[368]姣鍐呭垵濮嬪寲 16-Jun-2025 19:58:08.021 淇℃伅 [main] org.apache.catalina.core.StandardService.startInternal Starting service [Catalina] 16-Jun-2025 19:58:08.021 淇℃伅 [main] org.apache.catalina.core.StandardEngine.startInternal Starting Servlet engine: [Apache Tomcat/9.0.22] 16-Jun-2025 19:58:08.029 淇℃伅 [main] org.apache.coyote.AbstractProtocol.start 寮�濮嬪崗璁鐞嗗彞鏌刐"http-nio-8080"] 16-Jun-2025 19:58:08.035 淇℃伅 [main] org.apache.coyote.AbstractProtocol.start 寮�濮嬪崗璁鐞嗗彞鏌刐"ajp-nio-8009"] 16-Jun-2025 19:58:08.036 淇℃伅 [main] org.apache.catalina.startup.Catalina.start Server startup in [43] milliseconds Connected to server 16-Jun-2025 19:58:18.043 淇℃伅 [Catalina-utility-2] org.apache.catalina.startup.HostConfig.deployDirectory 鎶妛eb 搴旂敤绋嬪簭閮ㄧ讲鍒扮洰褰� [E:\java_dev\apache-tomcat-9.0.22\webapps\manager] 16-Jun-2025 19:58:18.314 淇℃伅 [Catalina-utility-2] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory [E:\java_dev\apache-tomcat-9.0.22\webapps\manager] has finished in [271] ms E:\java_dev\apache-tomcat-9.0.22\bin\catalina.bat stop Using CATALINA_BASE: "C:\Users\hw\AppData\Local\JetBrains\IntelliJIdea2024.1\tomcat\b47a5540-753d-496f-a7ac-2be863a0d0e1" Using CATALINA_HOME: "E:\java_dev\apache-tomcat-9.0.22" Using CATALINA_TMPDIR: "E:\java_dev\apache-tomcat-9.0.22\temp" Using JRE_HOME: "C:\Program Files\Java\jdk1.8.0_361" Using CLASSPATH: "E:\java_dev\apache-tomcat-9.0.22\bin\bootstrap.jar;E:\java_dev\apache-tomcat-9.0.22\bin\tomcat-juli.jar" 16-Jun-2025 20:02:31.227 淇℃伅 [main] org.apache.catalina.core.StandardServer.await A valid shutdown command was received via the shutdown port. Stopping the Server instance. 16-Jun-2025 20:02:31.227 淇℃伅 [main] org.apache.coyote.AbstractProtocol.pause Pausing ProtocolHandler ["http-nio-8080"] 16-Jun-2025 20:02:31.322 淇℃伅 [main] org.apache.coyote.AbstractProtocol.pause Pausing ProtocolHandler ["ajp-nio-8009"] 16-Jun-2025 20:02:31.409 淇℃伅 [main] org.apache.catalina.core.StandardService.stopInternal Stopping service [Catalina] 16-Jun-2025 20:02:31.418 淇℃伅 [main] org.apache.coyote.AbstractProtocol.stop Stopping ProtocolHandler ["http-nio-8080"] 16-Jun-2025 20:02:31.418 淇℃伅 [main] org.apache.coyote.AbstractProtocol.stop Stopping ProtocolHandler ["ajp-nio-8009"] 16-Jun-2025 20:02:31.419 淇℃伅 [main] org.apache.coyote.AbstractProtocol.destroy 姝e湪鎽ф瘉鍗忚澶勭悊鍣� ["http-nio-8080"] 16-Jun-2025 20:02:31.420 淇℃伅 [main] org.apache.coyote.AbstractProtocol.destroy 姝e湪鎽ф瘉鍗忚澶勭悊鍣� ["ajp-nio-8009"] Disconnected from server
06-17
30-Mar-2025 12:24:49.577 严重 [main] org.apache.catalina.core.StandardServer.await 无法在地址[localhost]和端口[8005]上创建服务器关闭套接字(基本端口[8005]和偏移量[0]) java.net.BindException: Address already in use: JVM_Bind at java.net.DualStackPlainSocketImpl.bind0(Native Method) at java.net.DualStackPlainSocketImpl.socketBind(DualStackPlainSocketImpl.java:102) at java.net.AbstractPlainSocketImpl.bind(AbstractPlainSocketImpl.java:513) at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:180) at java.net.ServerSocket.bind(ServerSocket.java:375) at java.net.ServerSocket.<init>(ServerSocket.java:237) at org.apache.catalina.core.StandardServer.await(StandardServer.java:537) at org.apache.catalina.startup.Catalina.await(Catalina.java:825) at org.apache.catalina.startup.Catalina.start(Catalina.java:773) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:345) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:473) 30-Mar-2025 12:24:49.577 信息 [main] org.apache.coyote.AbstractProtocol.pause 暂停ProtocolHandler["http-nio-8080"] 30-Mar-2025 12:24:49.577 信息 [main] org.apache.catalina.core.StandardService.stopInternal 正在停止服务[Catalina] 30-Mar-2025 12:24:49.593 信息 [main] org.apache.coyote.AbstractProtocol.stop 正在停止ProtocolHandler ["http-nio-8080"] 30-Mar-2025 12:24:49.593 信息 [main] org.apache.coyote.AbstractProtocol.destroy 正在摧毁协议处理器 ["http-nio-8080"] 运行日志的结果是否表示tomcat存在问题
03-31
08-Aug-2025 19:00:16.954 严重 [main] org.apache.catalina.util.LifecycleBase.handleSubClassException 初始化组件[Connector["http-nio-8080"]]失败。 org.apache.catalina.LifecycleException: 协议处理程序初始化失败 at org.apache.catalina.connector.Connector.initInternal(Connector.java:1072) at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:122) at org.apache.catalina.core.StandardService.initInternal(StandardService.java:522) at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:122) at org.apache.catalina.core.StandardServer.initInternal(StandardServer.java:986) at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:122) at org.apache.catalina.startup.Catalina.load(Catalina.java:690) at org.apache.catalina.startup.Catalina.load(Catalina.java:713) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:302) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:475) Caused by: java.net.BindException: Address already in use: bind at java.base/sun.nio.ch.Net.bind0(Native Method) at java.base/sun.nio.ch.Net.bind(Net.java:555) at java.base/sun.nio.ch.ServerSocketChannelImpl.netBind(ServerSocketChannelImpl.java:337) at java.base/sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:294) at org.apache.tomcat.util.net.NioEndpoint.initServerSocket(NioEndpoint.java:298) at org.apache.tomcat.util.net.NioEndpoint.bind(NioEndpoint.java:253) at org.apache.tomcat.util.net.AbstractEndpoint.bindWithCleanup(AbstractEndpoint.java:1465) at org.apache.tomcat.util.net.AbstractEndpoint.init(AbstractEndpoint.java:1478) at org.apache.coyote.AbstractProtocol.init(AbstractProtocol.java:663) at org.apache.coyote.http11.AbstractHttp11Protocol.init(AbstractHttp11Protocol.java:80) at org.apache.catalina.connector.Connector.initInternal(Connector.java:1070) ... 13 more 08-Aug-2025 19:00:16.957 信息 [main] org.apache.catalina.startup.Catalina.load 服务器在[667]毫秒内初始化 08-Aug-2025 19:00:17.016 信息 [main] org.apache.catalina.core.StandardService.startInternal 正在启动服务[Catalina] 08-Aug-2025 19:00:17.016 信息 [main] org.apache.catalina.core.StandardEngine.startInternal 正在启动 Servlet 引擎:[Apache Tomcat/9.0.108] 08-Aug-2025 19:00:17.030 信息 [main] org.apache.catalina.startup.HostConfig.deployDirectory 把web 应用程序部署到目录 [D:\java\apache-tomcat-9.0.108\webapps\docs] 08-Aug-2025 19:00:17.404 信息 [main] org.apache.catalina.startup.HostConfig.deployDirectory Web应用程序目录[D:\java\apache-tomcat-9.0.108\webapps\docs]的部署已在[369]毫秒内完成 08-Aug-2025 19:00:17.404 信息 [main] org.apache.catalina.startup.HostConfig.deployDirectory 把web 应用程序部署到目录 [D:\java\apache-tomcat-9.0.108\webapps\examples] 08-Aug-2025 19:00:17.913 信息 [main] org.apache.catalina.startup.HostConfig.deployDirectory Web应用程序目录[D:\java\apache-tomcat-9.0.108\webapps\examples]的部署已在[509]毫秒内完成 08-Aug-2025 19:00:17.914 信息 [main] org.apache.catalina.startup.HostConfig.deployDirectory 把web 应用程序部署到目录 [D:\java\apache-tomcat-9.0.108\webapps\host-manager] 08-Aug-2025 19:00:17.971 信息 [main] org.apache.catalina.startup.HostConfig.deployDirectory Web应用程序目录[D:\java\apache-tomcat-9.0.108\webapps\host-manager]的部署已在[57]毫秒内完成 08-Aug-2025 19:00:17.972 信息 [main] org.apache.catalina.startup.HostConfig.deployDirectory 把web 应用程序部署到目录 [D:\java\apache-tomcat-9.0.108\webapps\manager] 08-Aug-2025 19:00:18.022 信息 [main] org.apache.catalina.startup.HostConfig.deployDirectory Web应用程序目录[D:\java\apache-tomcat-9.0.108\webapps\manager]的部署已在[48]毫秒内完成 08-Aug-2025 19:00:18.022 信息 [main] org.apache.catalina.startup.HostConfig.deployDirectory 把web 应用程序部署到目录 [D:\java\apache-tomcat-9.0.108\webapps\ROOT] 08-Aug-2025 19:00:18.055 信息 [main] org.apache.catalina.startup.HostConfig.deployDirectory Web应用程序目录[D:\java\apache-tomcat-9.0.108\webapps\ROOT]的部署已在[33]毫秒内完成 08-Aug-2025 19:00:18.071 信息 [main] org.apache.catalina.startup.Catalina.start [1108]毫秒后服务器启动 08-Aug-2025 19:00:18.074 严重 [main] org.apache.catalina.core.StandardServer.await 无法在地址[localhost]和端口[8005]上创建服务器关闭套接字(基本端口[8005]和偏移量[0]) java.net.BindException: Address already in use: bind
最新发布
08-09
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值