错误:传输错误202:在调试模式下启动Tomcat 7时绑定失败

错误:传输错误202:在调试模式下启动Tomcat 7时绑定失败,tomcat,tomcat7,Tomcat,Tomcat7,我已经在windows7-64位机器上安装了tomcat 7.0.68 如果我运行catalina.bat jpda start,它只会打开和关闭,不会生成任何日志 如果我运行catalina.bat jpda run我会得到以下错误 Using CATALINA_BASE: "C:\apache-tomcat-7.0.68" Using CATALINA_HOME: "C:\apache-tomcat-7.0.68" Using CATALINA_TMPDIR: "C:\apache-

我已经在windows7-64位机器上安装了tomcat 7.0.68

如果我运行catalina.bat jpda start,它只会打开和关闭,不会生成任何日志

如果我运行catalina.bat jpda run我会得到以下错误

Using CATALINA_BASE:   "C:\apache-tomcat-7.0.68"
Using CATALINA_HOME:   "C:\apache-tomcat-7.0.68"
Using CATALINA_TMPDIR: "C:\apache-tomcat-7.0.68\temp"
Using JRE_HOME:        "C:\Java\jre7"
Using CLASSPATH:       "C:\apache-tomcat-7.0.68\bin\bootstrap.jar;C:\apache- 
                         tomcat-7.0.68\bin\tomcat-juli.jar"
Picked up _JAVA_OPTIONS: -Xmx512M
ERROR: transport error 202: bind failed: Address already in use
ERROR: JDWP Transport dt_socket failed to initialize, TRANSPORT_INIT(510)
       JDWP exit error AGENT_ERROR_TRANSPORT_INIT(197): No transports  
        initialized [../../../src/share/back/debugInit.c:750]
FATAL ERROR in native method: JDWP No transports initialized,
                       jvmtiError=AGENT_ERROR_TRANSPORT_INIT(197)

其他一些应用程序正在使用tomcat试图打开的端口。默认情况下,它使用8080844380058009等。, 使用下面的命令,grep用于已经在使用的tomcat特定端口

netstat -an
识别已经获得冲突端口的进程,并终止/释放,以便tomcat可以使用它。
还有一件事,tomcat调试模式尝试使用额外的端口进行调试(即8000)。查看该端口是否已被其他进程使用

我更改了端口,将JPDA_地址设置为1043,它对我有效

这个问题似乎是重复的。而且,我认为使用CATALINA_选项更简单、更合适

上面的答案如下

查看catalina.sh,可以看到catalina_OPTS仅用于“start”和“start security”命令,而JAVA_OPTS也用于“stop”命令(至少在openSUSE 12.1上的Tomcat 6.0.33中)


在我的例子中,有几个tomcat正在运行,在两个tomcat中,我给出了相同的jpda地址,因此其中一个tomcat无法启动,因为地址已经在使用中。

尝试用一行命令终止进程-

pkill -9 -f tomcat

终止现有进程(Kill-8{PID})并重新启动。上述错误应消除Windows answer

1.检测PID

netstat -ano
找到您需要的端口和相应的PID

2.压井工艺

taskkill /F /PID 1234

1234
替换为您的
PID

在hybris服务器启动时,我也遇到了同样的问题

当我使用“hybrisserver.bat debug”以调试模式启动hybris(在tomcat服务器上运行)时,我遇到了一个类似的错误

因此,在没有调试模式(即“hybrisserver.bat”)的情况下运行服务器


希望这对hybris开发人员有所帮助

最像是你先执行了p.bat,然后忘了阻止它。这可能已经绑定了端口,但没有释放它。请从这个角度检查。在最坏的情况下(不推荐),尝试重新启动。在任何其他进程之前执行调试。还有一件事,tomcat调试模式尝试使用额外的端口进行调试(即8000)。看看这个端口是否已经被其他进程使用了不是我忘了停止。我重新启动并在系统上首先执行了调试。它不起作用,所以我发布了这个问题。酷。。。早些时候是什么?您是否检查了它是否被其他进程使用?我使用netstat-an进行了检查,但它显示了正在使用的端口。但是,是的,更改端口解决了这个问题,因此,对于我来说,之前的值是默认值,即8000Thank you。。我也有同样的问题。我通过更改JPDA_地址解决了这个问题。只是为了解释实际发生的情况-您正在尝试将调试器连接到其他进程已经使用的端口。这就是为什么将端口更改为不同的值有助于可能重复的端口可能需要执行此操作的原因。