簡體   English   中英

無法打開調試器端口:java.net.ConnectException“連接被拒絕”

[英]Unable to open debugger port : java.net.ConnectException “Connection refused”

我正在使用 Android Studio v1.0.1 在 macOS Yosemite 10.10 中構建應用程序。 當我嘗試調試應用程序時,它安裝正確但出現錯誤

運行 [app] 時出錯:無法打開調試器端口:java.net.ConnectException“連接被拒絕”

當我運行 DDMS 時,它會顯示連接的設備和過程。 只是在 Android Studio 中嘗試調試時出現問題。

在其他論壇中,我發現有些東西可能會改變調試器的端口,但這並不能解決我的問題。

您的調試端口可能正忙(正在被另一個進程使用)。 您可以使用以下命令終止與 ADB 調試端口(8601 或更高版本)相關的所有進程:

fuser -k 8601/tcp 

更新:

OSX 下lsof應該完成替換fuser的工作:

lsof -i :8601

我也遇到過這個問題。 我認為我的解決方案可以幫助其他人,所以我把它貼在這里。

首先,您應該知道什么會導致“連接被拒絕”問題。 通常有兩種可能的原因:

  1. 此特定服務器未啟動。
  2. 服務器已啟動但不接受任何連接。

至於你的問題,我建議你先從你的安卓工作室啟動你的安卓設備監視器(DDMS),不要關閉它。

然后在 DDMS 中,您可以選擇要調試的包和“更新線程”,現在您可以在您的工作室中調試此應用程序。

我的問題通過以下步驟解決:

1. 使緩存失效/重啟 Android Studio

2. 重啟你的模擬器。

為我完成。

重新啟動我的Android Studio ,為我工作。

我在使用真實設備時遇到了這個問題,我只是拔掉了 USB 電纜,然后再次插入,它就可以工作了。 在模擬器的情況下,我想重新啟動模擬器會起作用。 這是有效的,因為斷開設備/模擬器會關閉所有連接的進程,然后您開始所需的進程。

對我來說,以上都沒有解決,並且在我想出這個解決方案之前被困在這個問題上好幾個月。 我在我的 mac 機器中有我的 HOST 文件的修改版本,比如將 IP 127.0.0.1 指向一個自定義域,比如 www.mymac.com。 一旦我恢復了,那么我就可以調試了。 是的!!! 希望這對某些人有所幫助。

這對我來說也是一個 /etc/hosts 文件問題,我更改了以下行(不知道它為什么在之前工作......升級到工作室 3.1.3 后它停止工作了!)

127.0.1.1    localhost 

127.0.0.1    localhost 

您可以使用netstat實用程序查看正在偵聽哪些端口的內容,如果速度快,還可以查看哪些內容嘗試連接到哪些端口。 這將有助於確保您的進程偵聽調試端口並確認其編號。

我還通過在我的 Mac 主機文件中設置 127.0.0.1 NOT 指向自定義域來解決這個問題。 需要注意的一件事是,我有 2 個主機文件,一個在“/”中,一個在“/etc”中。 實際使用了“/etc”中的一個。

我的情況是 mackbookpro: 20:21 Can't bind to local 8600 for debugger

我發現 /ect/hosts 文件是空白的。 所以,我將默認主機配置添加到 /etc/hosts 文件中,它工作正常。

127.0.0.1   localhost
255.255.255.255 broadcasthost
::1             localhost

我在物理設備上運行應用程序時遇到了同樣的問題。

只需將您的 PC 和手機連接到同一個 WiFi 網絡並禁用您的 PC 的防火牆。 它對我有用。

對於 Windows 用戶,您可以使用以下命令終止端口..

第1步:

打開 cmd(注意:您可能需要以管理員身份運行它,但這並不總是必要的),然后運行以下命令:

netstat -ano | findstr :PORT_NUMBER

在此處輸入圖片說明

第2步:


Syntax:
taskkill /PID PORT_NUMBER /F

cmd:
taskkill /PID 5005 /F

在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM