我有一个Java应用程序,我正在尝试使用eclipse进行调试。启动调试时,我在控制台中看到以下错误消息:
FATAL ERROR in native method: JDWP No transports initialized, jvmtiError=JVMTI_ERROR_INTERNAL(113)
ERROR: transport error 202: connect failed: Connection refused ["transport.c",L41]
ERROR: JDWP Transport dt_socket failed to initialize, TRANSPORT_INIT(510) ["debugInit.c",L500]
JDWP exit error JVMTI_ERROR_INTERNAL(113): No transports initialized
我没有尝试远程调试 java 应用程序。我的 Java 应用程序在 eclipse 本身中被设置为一个项目。我创建了一个调试配置并尝试使用它启动应用程序。
查看了此论坛上的各种选项后,我尝试 ping 本地主机和 127.0.0.1。他们都成功了(ping没有问题)。我不知道为什么会发生这种情况。
但是,调试适用于简单的测试类!
在失败时,这是我在日食日志中看到的:
eclipse.buildId=4.4.1.M20140925-0400
java.version=1.7.0_71
java.vendor=Oracle Corporation
BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=en_IE
Framework arguments: -product org.eclipse.epp.package.java.product
Command-line arguments: -os win32 -ws win32 -arch x86 -product org.eclipse.epp.package.java.product
org.eclipse.jdt.launching
Error
Mon Dec 29 15:24:26 GMT 2014
Cannot connect to VM
com.sun.jdi.connect.TransportTimeoutException
at org.eclipse.jdi.internal.connect.SocketTransportService.accept(SocketTransportService.java:105)
at org.eclipse.jdi.internal.connect.SocketTransportImpl.accept(SocketTransportImpl.java:59)
at org.eclipse.jdi.internal.connect.SocketListeningConnectorImpl.accept(SocketListeningConnectorImpl.java:153)
at org.eclipse.jdt.internal.launching.StandardVMDebugger$ConnectRunnable.run(StandardVMDebugger.java:110)
at java.lang.Thread.run(Unknown Source)
- 使用的Eclipse版本:Luna(4.4.1),Indigo(3.7.2) - 两者都失败了
- 为项目配置的 JDK 版本:jdk1.5.0_15
- 操作系统: 视窗 7, 64 位
- 防火墙:无 尝试在 eclipse
- .ini 中使用 -vm 参数启动 eclipse,指向 JRE 1.6.0_20。那也没用
有人可以指导我解决问题吗?
感谢任何帮助。谢谢。
拉维。
您的错误消息作为 Eclipse 调试常见问题解答中的条目:https://wiki.eclipse.org/Debug/FAQ#I_can_run_a_program_but_not_debug_it.3F.3F.3F
一些背景信息:Eclipse(以及所有其他 IDE)始终使用套接字连接到 JVM 进行调试。JVM是否在同一台计算机上并不重要。这意味着您的 IP 堆栈必须工作,安全设置必须允许 Java 打开端口等。
这可能由于以下几个原因而失败:
-
使用该端口。这通常发生在您指定要使用的端口而不是让 Eclipse 为您查找一个端口时。
-
防火墙或其他一些安全软件拒绝 Java 打开端口
-
您的网络配置已损坏。一种情况是特洛伊木马已将 IP 地址添加到
/etc/hosts
(或您的操作系统的变体)中以重定向您的流量。对于 Windows,请查看文件夹%WINDOWS%system32driversetc
重要的一点是
localhost
解析为127.0.0.1
。