我正在使用 Tomcat6.0.29。当我尝试使用 shutdown.bat 关闭 Tomcat 时,它并没有关闭 tomcat,而且我在日志文件中也没有看到任何有关所发生事件的更新。如果我尝试在命令提示符下使用“catalina stop”,我会收到以下错误。
__Error: transport error 02: bind failed: address already in use
error: JDWP Transport dt_socket failed to initialize. Transport_Init<510>
JDWP exit error AGENT_ERROR_TRANSPORT_INT<197>: No transport initialized{../../..src/
sare/back/debugInit.c:690}
FATAL ERROR in native method: JDWP No transports initialized, jvmtiError=AGENT_ERROR_TRANSPORT_INIT<197>__
请告诉我该怎么做才能修复此错误。提前致谢
答案1
出现此问题的原因似乎是端口特定选项(通常用于调试目的)应在 CATALINA_OPTS 而不是 JAVA_OPTS 中指定。关闭时,JAVA_OPTS 中的任何端口选项都将应用于关闭的 JVM,因此会出现“地址已在使用中”错误,导致关闭失败。请参阅https://stackoverflow.com/a/8216921/571357- Jaan 提供了更完整的答案。
答案2
Tomcat 使用不同的端口进行连接和关闭命令。
默认情况下,端口为 8005。例如来自server.xml
<Server port="8005" shutdown="SHUTDOWN">
您收到的错误表明端口存在冲突。
它是否正在被另一个进程使用?您正在进行远程调试吗?
更改端口以解决冲突