错误-运行spookyjs

问题描述 投票:11回答:3

运行windows时在spookyjs中收到以下错误,但代码在linux中工作。

错误

events.js:85
throw er; // Unhandled 'error' event
        ^
Error: spawn casperjs ENOENT
at exports._errnoException (util.js:746:11
at Process.ChildProcess._handle.onexit (ch
at child_process.js:1137:20
at process._tickCallback (node.js:355:11)

注意:

我已经安装了所有依赖项并添加了PATH变量

  1. Phantomjs
  2. Python
  3. casperjs-使用npm install -g casperjs全局安装

在命令提示符下casperjs正在工作

我尝试过的:

  1. 将npm安装为全局使用

     npm install -g npm
    
  2. 已卸载0.12并降级为0.10

  3. 已添加系统变量C:\Windows\System32;

任何想法或建议将不胜感激

node.js windows phantomjs casperjs spookyjs
3个回答
1
投票

[spawn正在尝试执行casperjs命令,请确保可以从cmd.exe控制台执行它。如果未执行,请找到casperjs二进制文件并确保将其添加到PATH


1
投票

是否有更新?我有同样的问题。

phantomjs和casperjs都在PATH中,并且可以从cmd.exe运行。试图也将其全局安装...

我的选项用完了!

编辑:好的,我没有对此进行测试,但这是有道理的。显然spawn无法处理.bat和.cmd文件,因此,当通过npm安装PhantomJS和CasperJS时,为什么它可以从cmd.exe运行,但不能从spawn运行。手动安装它们应该可以工作,因为您将拥有phantomjs.exe和casperjs.exe。今晚要尝试。

EDIT2:是的。作品。手动安装它们(然后将新路径放入PATH变量中),一切就很好了。


0
投票

实际上生成是在Windows中执行casperjs cmd。在Linux中,您使用的是这种方式

var casperjs = spawn('casperjs',[__dirname +'******',用户名]);

但是在Windows中,如果您已全局安装casperjs,请尝试此操作

var casperjs = spawn('casperjs.cmd',[__dirname +'******',用户名]);

或在spawn中提供完整路径(“完整安装路径”]

对我来说,它正在Windows上运行,希望这也会对您有所帮助。

© www.soinside.com 2019 - 2024. All rights reserved.