错误:在WebStorm文件观察器命令中生成ENOENT

时间:2014-04-03 13:47:10

标签: testing meteor webstorm watch laika

我正在构建一个Meteor应用,并尝试使用Laika进行测试。我在Ubuntu上的WebStorm 7中编写coffeescript,并尝试使用WebStorm的文件监视器功能在每次更改coffeescript文件时重新执行laika

作为上下文,我可以在项目根目录中运行laika --ui=bdd命令,我甚至可以使用WebStorm中的终端工具执行相同的操作。但是,当我设置文件监视器时,每次都会出现以下错误:

/home/oliver/.meteor/tools/latest/bin/laika --ui=bdd -V
[laika log] accepting the following extensions: (js)

  injecting laika...
  loading phantomjs...
  cleaning up injected code


/home/oliver/.meteor/tools/c2a0453c51/lib/node_modules/laika/lib/app.js:130
    if(err) throw err;
                  ^
Error: spawn ENOENT
    at errnoException (child_process.js:988:11)
    at Process.ChildProcess._handle.onexit (child_process.js:779:34)

我不是一个节点大师,并且甚至不知道如何调试这个错误,但是我希望别人觉得它很简单。有什么想法吗?

为了记录,我的配置:

enter image description here

1 个答案:

答案 0 :(得分:0)

事实证明,尽管WebStorm说Include parent environment variables,它实际上却遗漏了PATH的所有好东西。我将我的实际终端PATH变量整体粘贴到环境变量中:

PATH=/home/oliver/.meteor/tools/latest/bin:/usr/lib/lightdm/lightdm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games

......它有效!就是这样。

顺便说一句,如果你在Laika测试中遇到类似的问题,请记住你的测试使用 Meteor,但不会在 Meteor中执行环境,因此您想要使用的任何库都应npm installnode_modules内的tests目录。我花了一段时间才弄明白。