在网上会搜索到很多关于安装PonyDebugger的坑,实际都不算坑。
最坑的就是在执行下面这一句时,setupTools过不去。
正常成功后,你会在 /Users/your_name /Library/PonyDebugger/bin中找到ponyd的替身,而失败是不会看到的
python - --ponyd-symlink=/usr/local/bin/ponyd ~/Library/PonyDebugger
搜索了很多都没有找到解决办法。可能是因为要下班的原因,不够冷静,今天早上一上班,就找到了解决办法。
搜索关键词:
bootstrap-ponyd.py --always-copy -U setuptools
在PonyDebugger的issues的#198中找到解决办法,在链接里找到
yevgeniy-logachev 的回复。一步一步的操作,这里重新作一下解释
1.创建ponyd目录
mkdir ponyd
cd ponyd
2.下载一些文件,一步一步的执就行可以了
curl -O https://pypi.python.org/packages/11/b6/abcb525026a4be042b486df43905d6893fb04f05aac21c32c638e939e447/pip-9.0.1.tar.gz
curl -O https://pypi.python.org/packages/25/5d/cc55d39ac39383dd6e04ae80501b9af3cc455be64740ad68a4e12ec81b00/setuptools-0.6c11-py2.7.egg
curl -O https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/pybonjour/pybonjour-1.1.1.tar.gz
tar xvf pybonjour-1.1.1.tar.gz
mv pybonjour-1.1.1 pybonjour
3.下载bootstrap-ponyd.py,这里就是官方方法了
curl -O https://cloud.github.com/downloads/square/PonyDebugger/bootstrap-ponyd.py
4. 为了安装 pybonjour,在bootstrap-ponyd.py中添加一些命令:
subprocess.check_call([join(home_dir, 'bin', 'python'), join('pybonjour', 'setup.py'), 'install'])
操作方法:
def after_install(options, home_dir):
### 这里是添加的,注释文本不要加在里去 -begin ###
subprocess.check_call([join(home_dir, 'bin', 'python'), join('pybonjour', 'setup.py'), 'install'])
### 这里是添加的,注释文本不要加在里去- end ###
subprocess.check_call([join(home_dir, 'bin', 'pip'),
'install', '-U', '-e', 'git+https://github.com/square/PonyDebugger.git#egg=ponydebugger'])
5.执行安装方法
cat ./bootstrap-ponyd.py | python - --never-download --ponyd-symlink=/usr/local/bin/ponyd ~/Library/PonyDebugger
6.上面的安装方法,会报一些错误。没有关系,再次执行下面的一些命令来修复一下
~/Library/PonyDebugger/bin/easy_install -U backports_abc
~/Library/PonyDebugger/bin/easy_install -U certifi
~/Library/PonyDebugger/bin/easy_install -U singledispatch
~/Library/PonyDebugger/bin/easy_install -U pybonjour
执行以上命令后,基本都是以下面的语句为结尾,表示成功
Finished processing dependencies for xxxxxxx
7.安装devtools
ponyd update-devtools
如果你成功了,那么恭喜你。很不幸,我在这里失败了!下面是错误
> ponyd update-devtools
Downloading http://storage.googleapis.com/chromium-browser-continuous/Mac/152100/devtools_frontend.zip
Traceback (most recent call last):
File "/usr/local/bin/ponyd", line 8, in <module>
load_entry_point('ponyd==1.0', 'console_scripts', 'ponyd')()
File "/Users/your_name/Library/PonyDebugger/src/ponydebugger/ponyd/argbase.py", line 149, in main
args.command(args)
File "/Users/your_name/Library/PonyDebugger/src/ponydebugger/ponyd/argbase.py", line 128, in run_command
return instance()
File "/Users/your_name/Library/PonyDebugger/src/ponydebugger/ponyd/downloader.py", line 36, in __call__
tools_stream = StringIO(urllib2.urlopen(tools_url).read())
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 154, in urlopen
return opener.open(url, data, timeout)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 437, in open
response = meth(req, response)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 550, in http_response
'http', request, response, code, msg, hdrs)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 469, in error
result = self._call_chain(*args)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 409, in _call_chain
result = func(*args)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 656, in http_error_302
return self.parent.open(new, timeout=req.timeout)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 437, in open
response = meth(req, response)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 550, in http_response
'http', request, response, code, msg, hdrs)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 475, in error
return self._call_chain(*args)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 409, in _call_chain
result = func(*args)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 558, in http_error_default
raise HTTPError(req.get_full_url(), code, msg, hdrs, fp)
urllib2.HTTPError: HTTP Error 403: Forbidden
不用管他?试着监听一下,成功了。。。。。。
ponyd serve --listen-interface=127.0.0.1