折腾:
【未解决】Win10中VMWare中macOS同步更新自动测试工具的环境
期间,在Win10中VMWare中macOS中VSCode
想要调试Python项目,结果:
F5后,新建调试终端,但是无法继续调试,就直接停止退出了:

测试几次,都运行不起来:
crifanli@crifanlideMac ~/dev/DevRoot/appcrawler master ● source /Users/crifanli/dev/DevRoot/appcrawler/venv/bin/activate (venv) crifanli@crifanlideMac ~/dev/DevRoot/appcrawler master ● cd /Users/crifanli/dev/DevRoot/appcrawler ; /usr/bin/env /Users/crifanli/dev/DevRoot/appcrawler/venv/bin/python /Users/crifanli/.vscode/extensions/ms-python.python-2020.8.109390/pythonFiles/lib/python/debugpy/launcher 61988 -- /Users/crifanli/dev/DevRoot/appcrawler/crawlerStart.py
重启macOS试试
然后遇到个问题:
【基本解决】Win10中VMWare中macOS中VSCode的终端中部分字母如c或s不显示
再去启动调试看看
结果新建terminal时,和使用命令时,问题依旧:

s不显示
但是新建tab时,可以显示。
先凑合用。
但是后续无法正常使用:

F5启动调试后,新建终端中 / 斜杠,都无法显示了。。。
不知道是否是这个原因,导致的无法启动调试。
截图中,字符不显示
但是拷贝出来,其实是有字符的:
/usr/bin/env /Users/crifanli/dev/DevRoot/appcrawler/venv/bin/python3.8 /Users/crifanli/.vscode/extensions/ms-python.python-2020.9.114305/pythonFiles/lib/python/debugpy/launcher 50209 -- /Users/crifanli/dev/DevRoot/appcrawler/crawlerStart.py source /Users/crifanli/dev/DevRoot/appcrawler/venv/bin/activate crifanli@crifanlideMac ~/dev/DevRoot/appcrawler master ● /usr/bin/env /Users/crifanli/dev/DevRoot/appcrawler/venv/bin/python3.8 /Users/crifanli/.vscode/extensions/ms-python.python-2020.9.114305/pythonFiles/lib/python/debugpy/launcher 50209 -- /Users/crifanli/dev/DevRoot/appcrawler/crawlerStart.py crifanli@crifanlideMac ~/dev/DevRoot/appcrawler master ● source /Users/crifanli/dev/DevRoot/appcrawler/venv/bin/activate (venv) crifanli@crifanlideMac ~/dev/DevRoot/appcrawler master ●
只是不显示而已。
算了, 怀疑VSCode本身出问题了。
加上之前有提示,是不是 VSCode升级期间,被中断过。
所以:去尝试,完全卸载后重新安装VSCode试试,看看能否解决此处的问题
1.c或s等部分字符不显示
以及斜杠/不显示
2.调试python失败
重新下载和安装


结果:

问题依旧。
还是无法启动python项目调试

突然感觉,或许此处不是显示的问题,而只是:
Python调试器的问题?

去重新安装Python插件试试

结果:

问题依旧。
去对比看看,原先Mac真机中,Python启动调试时,输出的内容是什么
有何不同
版本: 1.49.2 提交: e5e9e69aed6e1984f7499b7af85b3d05f9a6883a 日期: 2020-09-24T16:23:52.277Z Electron: 9.2.1 Chrome: 83.0.4103.122 Node.js: 12.14.1 V8: 8.3.110.13-electron.0 OS: Darwin x64 18.7.0
VSCode的版本是 旧版本 1.49.2
不是 虚拟机中macOS的最新的 1.50.1
那后续如果需要,可以试试:
给虚拟机macOS中换1.49.2的VSCode试试

VSCode用的是内置的终端
调试时输出是:

/usr/bin/env /Users/xxx/dev/xxx/crawler/appAutoCrawler/AppCrawler/venv/bin/python /Users/xxx/.vscode/extensions/ms-python.python-2020.9.114305/pythonFiles/lib/python/debugpy/launcher 61255 -- /Users/xxx/dev/xxx/crawler/appAutoCrawler/AppCrawler/crawlerStart.py -task /Users/xxx/dev/xxx/crawler/appAutoCrawler/AppCrawler/task/20201012_fengyun_YongHengJiYuan/20201012_fengyun_YongHengJiYuan_gameApp.txt -id 1 source /Users/xxx/dev/xxx/crawler/appAutoCrawler/AppCrawler/venv/bin/activate xxx@xxx ~/dev/xxx/crawler/appAutoCrawler/AppCrawler master /usr/bin/env /Users/xxx/dev/xxx/crawler/appAutoCrawler/AppCrawler/venv/bin/python /Users/xxx/.vscode/extensions/ms-python.python-2020.9.114305/pythonFiles/lib/python/debugpy/launcher 61255 -- /Users/xxx/dev/xxx/crawler/appAutoCrawler/AppCrawler/crawlerStart.py -task /Users/xxx/dev/xxx/crawler/appAutoCrawler/AppCrawler/task/20201012_fengyun_YongHengJiYuan/20201012_fengyun_YongHengJiYuan_gameApp.txt -id 1
其中:
给启动脚本crawlerStart.py加了-task参数
对比:虚拟机macOS中,貌似没有task参数?
先去研究为何没有task参数
然后发现了:

此处VSCode调试,F5,默认是:Python当前文件
而不是:应该选择的crawlerStart.py
导致没有额外的crawlerStart.py时的-task参数
所以去改为:

Python: crawlerStart
再去调试:
终于可以正常启动了:

/usr/bin/env /Users/crifanli/dev/DevRoot/appcrawler/venv/bin/python3.8 /Users/crifanli/.vscode/extensions/ms-python.python-2020.9.114305/pythonFiles/lib/python/debugpy/launcher 55890 -- /Users/crifanli/dev/DevRoot/appcrawler/crawlerStart.py -task /Users/crifanli/dev/DevRoot/appcrawler/task/20201014_fengyun_YongHengJiYuan/20201014_fengyun_YongHengJiYuan_gameApp.txt -id 1 source /Users/crifanli/dev/DevRoot/appcrawler/venv/bin/activate crifanli@crifanlideMac ~/dev/DevRoot/appcrawler master ● /usr/bin/env /Users/crifanli/dev/DevRoot/appcrawler/venv/bin/python3.8 /Users/crifanli/.vscode/extensions/ms-python.python-2020.9.114305/pythonFiles/lib/python/debugpy/launcher 55890 -- /Users/crifanli/dev/DevRoot/appcrawler/crawlerStart.py -task /Users/crifanli/dev/DevRoot/appcrawler/task/20201014_fengyun_YongHengJiYuan/20201014_fengyun_YongHengJiYuan_gameApp.txt -id 1 [201015 11:00:36][crawlerStart.py 123] basename=20201014_fengyun_YongHengJiYuan_gameApp.txt [201015 11:00:36][crawlerStart.py 106] createdDate=20201014, businessType=fengyun, taskName=YongHengJiYuan, crawlerType=gameApp, platform=, suffix=txt [201015 11:00:36][DevicesMethods.py 34 ] platform= -> self.platformType=Android, self.isAndroid=True, self.isiOS=False [201015 11:00:36][DevicesMethods.py 39 ] self.isGameApp=True /bin/sh: adb: command not found err=Command 'adb -s hmucaei75ptk7szs shell getprop ro.product.name' returned non-zero exit status 127. when run cmd=adb -s hmucaei75ptk7szs shell getprop ro.product.name [201015 11:00:36][MainUtils.py 4335] DataFilePath is /Users/crifanli/dev/DevRoot/appcrawler/data/fengyun/20201014_fengyun_YongHengJiYuan/20201014_fengyun_YongHengJiYuan_gameApp.txt [201015 11:00:37][AppCrawler.py 54 ] start to crawl app in=install 20201014_fengyun_YongHengJiYuan_gameApp.txt [201015 11:00:37][DownloadApps.py 15 ] start to download apps in dir /Users/crifanli/dev/DevRoot/appcrawler/task/20201014_fengyun_YongHengJiYuan/20201014_fengyun_YongHengJiYuan_gameApp.txt [201015 11:00:37][DownloadApps.py 41 ] get 1 task from /Users/crifanli/dev/DevRoot/appcrawler/task/20201014_fengyun_YongHengJiYuan/20201014_fengyun_YongHengJiYuan_gameApp.txt [201015 11:00:37][DownloadApps.py 62 ] start to download 018/永恒纪元,url https://dl.hz.37.com.cn/upload/1_1002464_10068/yonghengjiyuanjie_3384240.apk [201015 11:00:49][DownloadApps.py 81 ] download 018/永恒纪元 4.02%
调试输出也是正常的了。
虽然显示上,/斜杠不显示,但是是有内容的。
至此,算是找到了VSCode无法启动Python项目去调试的问题了。
【总结】
此处Win10中VMWare虚拟机中macOS中VSCode,F5调试,无法启动调试Python项目
原因:其实已经启动了,只不过默认Python调试配置是:当前文件
导致没有出现希望的调用对应参数,继续调试游戏测试
解决办法:把
Python:当前文件
改为此处希望的:
Python: crawlerStart
即可。
注:
之于终端显示,斜杠/ 不显示,则是属于UI显示问题
其实内容本身是存在的-》可以通过拷贝终端输出后粘贴别处,而确认。
对于调试本身,影响不大。