我已经开始尝试使用Crossbar和WAMP(Web Apps消息传递协议),并且在短短几周内就爱上了这些东西。我也回答了this stack overflow question(Debugging Crossbar.io app in IntelliJ),但是,我对自己的解决方案有疑问。
...
步骤2:使用Python 2为crossbar.io创建一个pyenv
$ pyenv virtualenv 2.7.6 crossbar $ pyenv activate crossbar (crossbar)$ pip install crossbar...
步骤5:使用Python 3为应用程序组件创建一个pyenv
$ pyenv virtualenv 3.4.2 app $ pyenv activate app (app)$ pip install autobahn
步骤6:使用" app"创建一个普通的PyCharm项目作为本地python环境。我的意思是使用app pyenv中的python可执行文件作为 解释
...
在我的解决方案的第5步中,我建议为应用程序组件创建一个新的虚拟python环境。
步骤6纯粹是为了让IDE自动完成并从上面的虚拟环境中找到本地包,库和东西。我估计," crossbar"命令不知道这个虚拟环境。
所以,当我通过〜/ .pyenv / versions / crossbar / bin / crossbar start 命令运行应用程序时,如何确保从虚拟环境中使用python解释器?我的意思是从〜/ .pyenv / versions / app / bin / python3 ?
是否与配置文件有关? 我很快看了一下docs(http://crossbar.io/docs/Container-Configuration/),但遗憾的是根本没有找到任何关于Python解释器的信息。
我尝试在配置文件中添加"可执行文件":"〜/ .pyenv / versions / app / bin / python3" ,但它显然没有& #39; t通过验证。我的意思是 crossbar check 命令失败。
感谢高级。
答案 0 :(得分:0)
如果您希望将Python 3用于 app组件,并让该组件由Crossbar.io启动,则表示您需要来宾。
为guest虚拟机工作者配置可执行运行的方法(在您的情况下为Python 3)确实是使用executable
参数。
文档稀疏,但here。
您最安全的选择是在executable
中使用完全限定的绝对路径,指向您要用于组件的virtualenv中的Python 3二进制文件。
请注意,上述内容适用于来宾。 Crossbar.io 本地工作者包括路由器和组件容器。后者也能够托管Python应用程序组件,但仅来自与Crossbar.io相同的Python。文件(对不起,我知道,稀疏)是here。