Eclipse错误:"无法连接到远程VM"

dev*_*ull 46 java eclipse

当我从Eclipse IDE启动Debug时,我收到以下错误.

信息: “Failed to connect to remote VM. Connection Refused”

可能是什么原因?

Gle*_*len 31

您是否设置了远程VM以接受连接?

java -Xdebug -Xrunjdwp:server=y,transport=dt_socket,address=10000,suspend=n yourServer
Run Code Online (Sandbox Code Playgroud)

路上有防火墙吗?

您是否指定了正确的主机/端口?

你连接到VPN吗?

  • 我的问题是不小心将调试标志添加到命令行的末尾,因此它们只是传递给程序本身. (4认同)
  • 什么是"yourServer"匹配的参数?它似乎是一个java类...如何正确设置它? (4认同)

Nat*_*rio 27

从eclipse中删除你的代理!

转到常规首选项(Windows - >首选项)中的网络连接,并将"活动提供商"设置为"直接"

删除代理

之后重启Eclipse


小智 6

用于0.0.0.0使地址能够与任何远程计算机连接的地址,即:

-Xdebug -Xrunjdwp:transport=dt_socket,address=0.0.0.0:8000,server=y,suspend=y
Run Code Online (Sandbox Code Playgroud)

  • 这似乎是最近的更改(JDK 9+)...如果您只指定端口,它将接受从任何 IP 到该端口的连接。现在,如果您想要连接任何内容,您需要手动指定 IP 或使用 0.0.0.0。 (3认同)

aen*_*enw 5

David Citron是正确的-如果localhost无法正确解析,则可能导致此问题。测试方法如下:

如果您的PC 未连接到网络(没有WiFi,没有网络电缆)时仍然有效。如果它在这些情况下确实有效,则可能是您需要确保地址解析localhost正确。DDMS和adb.exe用于调试和与VM通信的消息必须localhost在您的PC上正确解析。(是的,奇怪的是,其他使用DDMS和adb的命令也能正常工作,但不能调试。似乎DDMS或adb中的某些内容需要进行标准化,因此它们都可以在相同的条件下工作。)

如果您需要确保一切localhost正常,请执行以下操作:

1)确保此行在您的/Windows/System32/drivers/etc/hosts 文件中:

127.0.0.1本地主机

(您可以在“ 127.0.0.1”和“ localhost”之间使用任意数量的空格)

并且-正如David Citron所建议的-确保hosts文件有效,并且其中没有内容或错误。

2)如果不起作用,则可能还需要将PC的IPv4地址添加到hosts文件,并将其解析为localhost。(你可以找到的IPv4地址为您的机器与ipconfig命令。)如果,例如,你的机器的IPv4地址是192.168.1.100,那么你会添加一行

192.168.1.100本地主机

到您的主机文件。(您可以将其添加到文件中的“ 127.0.0.1 localhost”行下方。)

您可以使用以下netstat -b命令来验证adb(如果正在运行,则为模拟器)是否正在侦听端口:(请注意,您需要该-b选项的管理员权限。我使用“以管理员身份运行”打开命令窗口。)