node.js - Nodejs GM 模块 ImageMagick - 奇怪的错误

标签 node.js heroku imagemagick graphicsmagick

我有一个非常奇怪的错误。我使用的是 MAC OS X 10.9.5。 当我使用 GM 的某些功能(npm install gm)时,例如调整大小或其他功能,我收到此错误。

    events.js:72
            throw er; // Unhandled 'error' event
          ^
    Error: spawn ENOENT
        at errnoException (child_process.js:988:11)
        at Process.ChildProcess._handle.onexit (child_process.js:779:34)

我发现了很多关于它的线程,根据它们,我已经通过brew安装了graphicksmagic和imagemagick到系统。

brew install imagemagick
brew install graphicsmagick

它工作了一段时间,但无缘无故地再次开始显示上述错误。

我检查了我已经在系统中安装了imagemagick和graphicksmagick并且它在终端上工作。 我检查了 $PATH 中是否有它并且它在那里。

如果我在nodejs中运行它,它会在控制台中显示imagemagick的正确版本,所以我假设nodejs中的路径没问题。

var sys = require('sys')    
var exec = require('child_process').exec;
        function puts(error, stdout, stderr) {
                if(error)
                        sys.puts(error);
                if(stderr)
                        sys.puts(stderr);
                sys.puts(stdout);
        }
exec("identify --version", puts);

这是崩溃的代码:

gm(request(url), thumbName)
                .resize('300', '300', '^')
                .gravity('Center')
                .crop('300', '300')
                .toBuffer('JPG',function (err, buffer) {
                    var data = {
                        Bucket: bucket,
                        Key: thumbName,
                        Body: buffer,
                        ACL:'public-read',
                        ContentType: 'image/jpeg'
                    };
                    s3.putObject(data, function(err, res) {
                       ....
                    });

当我将其部署在heroku上时,一切正常

最佳答案

如果有人遇到这个问题,我已经解决了。 我用这个值将变量 PATH 添加到 Node 中的环境变量中 bin:node_modules/.bin:/usr/local/bin:/usr/bin:/bin

关于node.js - Nodejs GM 模块 ImageMagick - 奇怪的错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28897255/

相关文章:

python - Python 脚本中的 ImageMagick 代码

node.js - 带有 Passport 的 Nodejs/Express 路由返回未定义的 req.url

php - 带有 express 和 mysql 的 Node.js API - 重新定义获取的参数以进行正确的列搜索

javascript - 如何在 Javascript 中从数组中提取值

node.js - 在express.js中使用jsonp作为node.js

java - Heroku 集成

node.js - 在 Heroku 上迁移到 Node 0.4.7 有何影响?

ruby-on-rails-3 - Rails 时区错误?

ruby-on-rails - 回形针不生成缩略图,静默失败

ios - 如何成功地将ImageMagick集成到iOS中?