首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >脚本在Webstorm中失败,但不在终端中失败

脚本在Webstorm中失败,但不在终端中失败
EN

Stack Overflow用户
提问于 2012-06-24 12:53:10
回答 2查看 10.7K关注 0票数 13

我有一个nodejs脚本,它使用phantomjs-node来抓取网页。当我从终端窗口运行时,它工作得很好,但当我通过Node JS应用程序的运行配置从Webstorm内部运行时,情况就不一样了。

Webstorm中的错误可能是什么原因造成的?

在注释掉.bash_profile的内容之后,我已经尝试从终端运行该脚本,它仍然有效。我还检查了另一个示例脚本中的process.env内容,发现Webstorm和terminal中的值完全不同。

脚本:

代码语言:javascript
复制
var phantom = require('phantom');
phantom.create(function(ph) {
    return ph.createPage(function(page) {
        return page.open("http://www.google.com", function(status) {
            console.log("opened google? ", status);
            return page.evaluate((function() {
                return document.title;
            }), function(result) {
                console.log('Page title is ' + result);
                return ph.exit();
            });
        });
    });
});

终端输出(效果很好!):

代码语言:javascript
复制
opened google?  success
Page title is Google

Webstorm控制台输出(失败):

代码语言:javascript
复制
/usr/local/bin/node phantom.js
phantom stderr: execvp(): No such file or directory


Process finished with exit code 0
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-06-25 14:40:20

Webstorm确实设置了路径变量,但它与应用程序在终端中运行时获得的路径变量不同。我的解决方案,黑客:

Webstorm键入node以进入REPL

  • Run,将PATH值的内容

  • 添加到名为PATH的Webstorm中,该环境变量使用此值。它将覆盖Webstorm为您的应用程序提供的默认路径变量。

完成了!

票数 26
EN

Stack Overflow用户

发布于 2012-06-24 18:55:15

如果你使用的是Mac,请参阅http://devnet.jetbrains.net/docs/DOC-1160。本文档最初是为RubyMine编写的,但它也适用于WebStorm。

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

https://stackoverflow.com/questions/11175041

复制
相关文章

相似问题

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