问题
Does anyone know why Eclipse is asking for incoming network connections? I searched around and saw mentions of Code Completion with PyDev, but I disabled code completion in PyDev, restarted, and was still prompted for incoming network connections.
回答1:
PyDev spawns a shell and connects to it to request information on builtin modules (besides using it to debug a process).
I.e.: The shell is spawn at https://github.com/fabioz/Pydev/blob/master/plugins/org.python.pydev/src_completions/org/python/pydev/editor/codecompletion/shell/PythonShell.java
and used in:
https://github.com/fabioz/Pydev/blob/master/plugins/org.python.pydev/src_completions/org/python/pydev/editor/codecompletion/revisited/modules/CompiledModule.java
So, this may be triggered at multiple places in PyDev (whenever a code completion, code analysis or indexing is done it may be requested and a request for any builtin module is done -- i.e.: anything in forced builtins as explained in http://www.pydev.org/manual_101_interpreter.html).
So, in order to function properly, PyDev really needs that connection to work (otherwise completions and code analysis may not work properly), which means you really have to clear it in your firewall (at least for local connections -- remote connections are only needed if you're going to use the remote debugger).
回答2:
I'm not sure if this is the only reason but at least one of them could be that PyDev's debugger listens for connections from clients being debugged (this is on 3.9.1 and 3.9.2).
That is, when you debug an application, the TCP flow is from the application to PyDev/Eclipse. Hence it could be that Eclipse needs it just in case you'll want to debug things in the future.
What port is it, 5678? That's the debugger's port.
This is just a wild guess, perhaps this is it in your situation?
来源:https://stackoverflow.com/questions/28516843/why-does-eclipse-want-incoming-network-connections-using-os-x