首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Mink > Zombie.js无法启动会话

Mink > Zombie.js无法启动会话
EN

Stack Overflow用户
提问于 2014-07-12 06:42:00
回答 2查看 846关注 0票数 0

我正在尝试创建一个与僵尸驱动程序的Mink连接,但我得到了一个错误。所有端口都已打开,并且我已尝试使用我的服务器IP。

我的代码:

代码语言:javascript
复制
$driver = new \Behat\Mink\Driver\ZombieDriver('127.0.0.1');
$zombieSession = new \Behat\Mink\Session($driver);
$zombieSession->start();

错误:

代码语言:javascript
复制
Fatal error: Uncaught exception 'RuntimeException' with message 'Server process has 
been terminated: (127) [sh: node: command not found ]' in /home/runniog5/public_html/subdomains/testing4/vendor/behat/mink-zombie-driver/src/Behat/Mink/Driver/NodeJS/Server.php:406
Stack trace: #0 /home/runniog5/public_html/subdomains/testing4/vendor/behat/mink-zombie-driver/src/Behat/Mink/Driver/NodeJS/Server.php(302): 
Behat\Mink\Driver\NodeJS\Server->checkAvailability() #1 /home/runniog5/public_html/subdomains/testing4/vendor/behat/mink-zombie-driver/src/Behat/Mink/Driver/ZombieDriver.php(107): 
Behat\Mink\Driver\NodeJS\Server->start() #2 /home/runniog5/public_html/subdomains/testing4/vendor/behat/mink/src/Behat/Mink/Session.php(62): 
Behat\Mink\Driver\ZombieDriver->start() #3 /home/runniog5/public_html/subdomains/testing4/test.php(114): 
Behat\Mink\Session->start() #4 {main} thrown in /home/runniog5/public_html/subdomains/testing4/vendor/behat/mink-zombie-driver/src/Behat/Mink/Driver/NodeJS/Server.php 
on line 406
EN

回答 2

Stack Overflow用户

发布于 2014-07-12 16:45:53

确保您安装了Node,并且它可以正常工作。Server process has been terminated: (127) [sh: node: command not found ]会告诉您,shell无法找到节点命令。为了验证你已经安装了它,运行node -v,它应该打印当前安装的版本。

票数 0
EN

Stack Overflow用户

发布于 2015-06-23 00:08:51

问题是ZombieServer不知道您的节点的二进制文件的路径。要解决此问题,请使用以下代码:

代码语言:javascript
复制
$zombieServer = new ZombieServer($host, $port, $pathToYourNodeBinary, $serverPath, $threshold, $pathToYourNodeModules);
$zombieDriver = new ZombieDriver($zombieServer);
$session = new Session($zombieDriver);
$mink = new Mink(array('zombie' => $session));

在我的例子中,$pathToYourNodeBinary和$pathToYourNodeModules是:

代码语言:javascript
复制
$pathToYourNodeBinary = '/usr/local/bin/node';
$pathToYourNodeModules = '/usr/local/lib/node_modules/';

你可以使用这些命令来了解你的路径是什么(如果你运行的是Mac和OSX):

代码语言:javascript
复制
which node
which npm

当然,您需要设置其余的ZombieServer构造函数变量。要了解缺省值,只需查看您的供应商库中或github.com中的实现

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24707684

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档