問題描述:
昨天上午,凱哥還在好好的使用idea,中午的時候,360掃描,好像要升級還是要幹嘛的,沒細看,然後凱哥就點選確定。結果到下午使用idea的Terminal 命令列的時候提示,如下圖錯誤:
failed tostart[cmd.exe]
然後重新安裝了ieda,又提示如下錯誤:counld't create PTY
然後百度、google.從搜尋出的結果來看,可以總結為以下幾個問題:
1:cmd命令全路徑。如下圖:
凱哥也修改了,結果是,然並卵。
2:使用管理員許可權啟動:
將idea的相容性修改已管理員身份允許此程式。如下圖:
結果依然是然並卵。
3:還有說把CMD使用舊版本。
使用舊版本控制檯,選項選中,如下圖:
結果依然是然並卵。
然後又去官網查下問題。修改也是類似的,修改ideade shell path位置。實際是什麼用。
反正凱哥百度了一天,都沒用。就在絕望的時候,再來看看錯誤原因:
注:此錯誤原因是在idea 2020.1的版本下列印的。凱哥換了2018、2019、2020 三個版本的idea.
Cannot open Local Terminal
Failed to start [C:\Windows\system32\cmd.exe] in D:/kaigejava/kaigejava
Error starting winpty: ConnectNamedPipe failed: Windows error 232
This error can occur due to antivirus blocking winpty from creating a pty. Please exclude the following files in your antivirus:
- E:\kaigejava\ideaIU-2020.1.2.win\lib\pty4j-native\win\x86_64\winpty-agent.exe
- E:\kaigejava\ideaIU-2020.1.2.win\lib\pty4j-native\win\x86_64\winpty.dll
於是凱哥搜尋了:
Error starting winpty: ConnectNamedPipe failed: Windows error 232
偶然間,就這麼不小心的看到了一篇文章,說是360安全衛士的原因導致的。
於是凱哥回憶出現問題的原因,還真的是360誘導的。
原因,360安全防護中的程式防護處於安全考慮禁止了其他程式獲取cmd的許可權,如果需要放開此許可權,可以如下設定:
步驟:開啟360安全衛士。在右側有個【安全防護中心】。如下圖:
點選開啟後。有個程式防護。如下圖:
把程式防護關掉。然後在idea中,點選terminal的加號,就可以了。如下圖:
如果關閉掉之後:360會出現一個歎號。如下圖:
這種方法只是臨時關閉了安全防護。但是有可能電腦失去安全保護。
使用第二種方案:將idea新增到信任區。但是這個需要重啟電腦哦~
具體步驟:
將:
- E:\kaigejava\ideaIU-2020.1.2.win\lib\pty4j-native\win\x86_64\winpty-agent.exe
- E:\kaigejava\ideaIU-2020.1.2.win\lib\pty4j-native\win\x86_64\winpty.dll
這兩個檔案新增到360信任區。
360首頁,木馬查殺-->信任區。如下圖:
點選新增檔案:
將上面兩個檔案新增進去。獲取是新增目錄,直接將上面兩個檔案的根目錄新增進去。把安全防護中心的-程式保護開啟,然後重啟電腦,再試試。
就這個問題,凱哥(凱哥Java:kaigejava)搞了一天時間啊。浪費啊!不過,現在已經解決了。分享出來,希望能夠幫助遇到類似問題的你。
說明:此方法時候解決360安全衛士導致Idea、webstorm等無法開啟終端Terminal的問題Cannot open Local Terminal