2013-07-22 17 views
23

podczas instalacji application.py, pokazuje, że socket.error: [Errno 98] Adres już w użyciu.python socket.error: [Errno 98] Adres już w użyciu

Traceback (most recent call last): 
File "application.py", line 121, in <module> 
main() 
File "application.py", line 117, in main 
http_server.listen(options.port) 
File "/usr/local/lib/python2.7/site-packages/tornado-3.1-py2.7.egg/tornado/tcpserver.py", line 117, in listen 
sockets = bind_sockets(port, address=address) 
File "/usr/local/lib/python2.7/site-packages/tornado-3.1-py2.7.egg/tornado/netutil.py", line 90, in bind_sockets 
sock.bind(sockaddr) 
File "/usr/local/lib/python2.7/socket.py", line 224, in meth 
return getattr(self._sock,name)(*args) 
socket.error: [Errno 98] Address already in use 
+0

Musisz podać więcej informacji o aplikacji. –

+1

Jeśli znasz adres, którego próbujesz użyć, możesz dowiedzieć się, co jeszcze trzyma ten adres za pomocą 'netstat'. – Luke

+0

Zmień 'address' i podaj nam więcej kodu. –

Odpowiedz

67

Istnieje oczywiście inny proces nasłuchujący na porcie. Możesz dowiedzieć się tego procesu, używając następującej komendy:

$ lsof -i :8000 

lub zmień port aplikacji tornado. informacja o błędzie tornada nie Jawnie w tej sprawie.

+16

-1 Zła odpowiedź, 'lsof' nie zwraca żadnego wpisu i błąd nadal się pojawia. Prawidłowa odpowiedź tutaj: http://stackoverflow.com/questions/4465959/python-errno-98-address-already-in-use?lq=1 – NeDark

+0

Ja też: D I nie można użyć tego rozwiązania, @ NeDark, w każdym przypadku. –

+0

To działa dla mnie, aby sprawdzić, który program używa tego adresu. – panoet

Powiązane problemy