1
我使用此代碼如何解決OSERROR:[錯誤48]地址已在使用
@classmethod
def setUpClass(cls):
for arg in sys.argv:
if 'liveserver' in arg:
cls.server_url = 'http://' + arg.split('=')[1]
return
super().setUpClass()
cls.server_url=cls.live_server_url
當我嘗試啓動我的python3 manage.py測試functional_tests功能測試工作這book
我得到這個錯誤
ERROR: setUpClass (functional_tests.tests.NewVisitorTest)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/Users/USERNAME/Desktop/dev/tddwp/chap8/functional_tests/tests.py", line 14, in setUpClass
super().setUpClass()
File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/django/test/testcases.py", line 1189, in setUpClass
raise cls.server_thread.error
File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/django/test/testcases.py", line 1091, in run
(self.host, port), QuietWSGIRequestHandler)
File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/django/core/servers/basehttp.py", line 117, in __init__
super(WSGIServer, self).__init__(*args, **kwargs)
File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/socketserver.py", line 430, in __init__
self.server_bind()
File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/django/core/servers/basehttp.py", line 121, in server_bind
super(WSGIServer, self).server_bind()
File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/wsgiref/simple_server.py", line 50, in server_bind
HTTPServer.server_bind(self)
File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/http/server.py", line 135, in server_bind
socketserver.TCPServer.server_bind(self)
File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/socketserver.py", line 441, in server_bind
self.socket.bind(self.server_address)
OSError: [Errno 48] Address already in use
我已經試過 *重新啓動我的機器 *下載回購關github上,並從運行重新消除我可能用lsof * lsof查看是否可以找到它正在運行的端口並殺死它(我無法找到它),從而消除任何無意的錯誤。
我沒有想法。任何人都知道什麼可能是錯的?
也許使用不同的端口 - 大數字 - 如8000 – furas
這意味着其他東西已經在該端口上監聽。可能是另一個Web服務器。嘗試使用不同的端口。 – Keith
你有沒有想過它?使用Crtl-C退出我自己的服務器後,出現此錯誤。 – MadPhysicist