1

我在我的 Mac os x 上安装了 Testem(我同事的版本是 0.2.52,但在最新版本中问题仍然存在)和 CoffeeScript(1.6.3)。我们使用 testem 来运行我们项目的所有 Mocha 规范,并且都顺利运行了一段时间,只需输入:

testem

在正确的文件夹中。突然(我认为在 Mac 软件更新之后),如果不使用 sudo 特权运行,它就会停止工作。这很烦人,但没有时间深入研究它,我只是习惯了运行:

sudo testem

然后(在又一次 Mac 软件更新之后,我还在猜测)它完全停止工作,给了我这个错误:

Error running before_tests hook: coffee -co test/temp . &&  handlebars app/templates -a true -f test/temp/app/scripts/Templates.js
child_process.js:794                                                                                                                                                                                  
    throw errnoException(errno, 'spawn');
          ^                                                                                                                                                                                                  

Error: spawn EAGAIN                                                                        
    at errnoException (child_process.js:847:11)                                          
    at ChildProcess.spawn (child_process.js:794:11)                                      
    at exports.spawn (child_process.js:618:9)
    at Object.exports.execFile (child_process.js:510:15) 
    at exports.exec (child_process.js:481:18) 
    at writeJs (/usr/local/lib/node_modules/coffee-script/lib/coffee-script/command.js:432:16)
    at Object.fs.exists [as oncomplete] (fs.js:91:19)

如果我只输入 coffeescript 部分,我会得到同样的错误:

coffee -co test/temp .

这就是为什么我猜这是 CoffeeScript 的问题。和许可,我会说。

只是为了添加一些上下文(因为我知道这听起来很奇怪),这是一个运行到 Yeoman (0.9.6) 的 Backbone/Marionette 项目。

有任何想法吗?提前致谢。

* 更新* 如果我简单地运行:

coffee -c . // without the "-o test/temp" option

它实际上编译了没有错误的文件(将生成的 javascript 放在错误的文件夹中)。

my-app 
|
| - test // this one always exists, because it contains the specs of the project and other stuff 
     | - ...
     | - temp  // this folder is created and deleted by testem

所以最后似乎是拥有创建、写入和删除临时文件夹的权限的问题,不是吗?任何人?

4

0 回答 0