我正在设置一个 Google App Engine Django 项目以在 Vagrant 环境中运行,以便轻松设置/拆卸系统,并使用 PyCharm 作为 IDE。我能够在远程机器上使用 PyCharm 成功地让服务器运行,但是如果我尝试使用远程调试器来启动调试 session ,PyCharm 会给我一个非描述性错误:
运行 webapp 时出错:无法运行远程 python 解释器:无法从输出中获取远程套接字,stderr 文件“”,第 1 行
进口
^
语法错误:无效语法
我将尝试尽可能多地包含有关设置的信息:
/home/vagrant/www/shell/python-su.sh
设置为python解释器。只是将参数传递给 sudo /usr/bin/python $@
使其在 vagrant/GAE 中工作 /home/vagrant/google_appengine/
使其在远程机器上工作 所有这些都与我为运行配置所做的相匹配,并且工作正常。只有调试配置会引发此错误。
最佳答案
从 PyCharm 的帮助文档中,我找到了 this article详细说明如何打开更多日志记录到 PyCharm 日志文件。将此添加到位于 PyCharm Program Files 目录的/bin/目录中的 log.xml 文件中:
<category name="#com.jetbrains.plugins.webDeployment">
<priority value="DEBUG"/>
</category>
查看日志文件显示了它试图运行的命令,我可以通过 SSH-ing 运行到机器中自己运行它。从那里,我能够确定它来自我的 sudo python 文件。我不得不包装
$@
在引号中以使其正常工作。运行是有效的,因为参数足够简单,它没有被引用并不重要。最终的 python sudo shell 文件如下所示:sudo /usr/bin/python "$@"
关于django - 尝试从 PyCharm 运行远程解释器的调试配置时出现语法错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33529432/