我正在 IntelliJ 中使用 Crossbar.io 构建一个应用程序。由于您使用 shell 中的命令启动应用程序crossbar start
,因此我不清楚如何(理想情况下自动)将 Python 调试器附加到适当的脚本。有人有想法么?
1 回答
好问题。
我对如何调试也有点困惑,因为交叉开关似乎将 python 2 和 3 混合在一起。我想在使用 Python 3 的虚拟环境下安装 crossbar.io,因为示例组件使用的是 python 3,但由于某种原因,我无法在使用 Python 3 的虚拟环境下安装 crossbar,我被迫使用 Python 2 进行 WAMP 路由反而。我通常使用pyenv而不是 virtualenv,但是,我相信它们都是相似的。我最终创建了 2 个 pyenvs。一个使用 Python 2.7.6 纯粹用于 crossbario 路由器,另一个使用 Python 3.4.2 用于应用程序组件。
我的解决方案
我不知道这是否是解决此问题的最佳方法,但这就是我所做的。我使用了 PyCharm,但我相信 IntelliJ 也是类似的。
我没有在 virtualenv 下尝试过,但我认为它非常相似。
通过 pyenv 安装 python 2.7.6
$ pyenv 安装 2.7.6
使用 Python 2 为 crossbar.io 创建一个 pyenv
$ pyenv virtualenv 2.7.6 交叉开关 $ pyenv 激活交叉开关 (crossbar)$ pip install crossbar
查找并复制刚刚安装的交叉开关可执行文件的完整路径。
(横杆)$ 哪个横杆
并复制路径。
通过 pyenv 安装 python 3.4.2
$ pyenv 安装 3.4.2
使用 Python 3 为应用程序组件创建 pyenv
$ pyenv virtualenv 3.4.2 应用程序 $ pyenv 激活应用 (app)$ pip install autobahn
使用“app”作为本地 python 环境创建一个普通的 PyCharm 项目。我的意思是使用 app pyenv 中的 python 可执行文件作为解释器。
生成一个 hello world crossbar.io 应用程序。
$ pyenv 激活交叉开关 (crossbar)$ crossbar init --template hello:python
从菜单栏转到运行/编辑配置...
- 单击绿色 + 图标并选择 Python
- 粘贴交叉开关可执行脚本的完整路径。
~/.pyenv/versions/crossbar/bin/crossbar
- 将单词start作为脚本参数。
- 确保选择 crossbar 作为 Python 解释器而不是应用程序。如果我错了,请纠正我,但我相信我们在这里选择的解释器仅用于运行和调试目的,而不是用于代码完成和其他东西。
- 确保将 .crossbar 文件夹所在的路径作为工作目录路径。
- 访问 0.0.0.0:8080 以触发调试会话。