在IntelliJ中调试Crossbar.io应用程序

时间:2014-12-15 01:35:23

标签: python debugging intellij-idea crossbar

我正在使用IntelliJ中的Crossbar.io构建应用程序。由于您在shell中使用crossbar start命令启动应用程序,我不清楚如何(理想情况下自动)将Python调试器附加到相应的脚本。有人有主意吗?

1 个答案:

答案 0 :(得分:1)

好问题。

我对如何调试感到有点困惑,因为看起来像crossbar就是将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用于App组件。

我的解决方案

Have a look at the Screenshot

我不知道这是解决这个问题的最佳方法,但这就是我所做的。我使用过PyCharm,但我相信IntelliJ也很相似。

我没有在virtualenv下尝试这个,但我认为它非常相似。

  1. 通过pyenv安装python 2.7.6

    $ pyenv install 2.7.6
    
  2. 使用Python 2为crossbar.io

    创建一个pyenv
    $ pyenv virtualenv 2.7.6 crossbar
    $ pyenv activate crossbar
    (crossbar)$ pip install crossbar
    
  3. 查找并复制刚刚安装的crossbar可执行文件的完整路径。

    (crossbar)$ which crossbar
    

    并复制路径。

  4. 通过pyenv安装python 3.4.2

    $ pyenv install 3.4.2
    
  5. 使用Python 3为应用程序组件创建一个pyenv

    $ pyenv virtualenv 3.4.2 app
    $ pyenv activate app
    (app)$ pip install autobahn
    
  6. 创建一个普通的PyCharm项目,将“app”作为本地python环境。我的意思是使用app pyenv中的python可执行文件作为解释器。

  7. 生成一个hello world crossbar.io app。

    $ pyenv activate crossbar
    (crossbar)$ crossbar init --template hello:python
    
  8. 从菜单栏进入运行/编辑配置...

  9. 单击绿色+图标并选择Python
  10. 粘贴横杆可执行脚本的完整路径。
    ~/.pyenv/versions/crossbar/bin/crossbar
    
  11. 开始作为脚本参数。
  12. 确保选择crossbar作为Python解释器而不是应用程序。如果我错了,请纠正我,但我相信我们在这里选择的解释器仅用于运行和调试目的,而不是代码完成和填充。
  13. 确保将.crossbar文件夹所在的路径作为工作目录路径。
  14. 访问0.0.0.0:8080以触发调试会话。