Node.js:错误:使用GM模块时生成ENOENT
Node.js: Error: spawn ENOENT while using GM module
尽管这个问题已经被问了好几次,但现有的答案都没有帮助我。使用MEAN环境(在Mac OSX上),我使用安装了graphicsmagick
sudo npm install gm
每当我运行以下脚本时,我都会收到以下错误:
{ [Error: spawn ENOENT] code: 'ENOENT', errno: 'ENOENT', syscall: 'spawn' }
这是我试图运行的一段代码:
var gm = require('gm');
//var gm = require('gm').subClass({ imageMagick: true }); //tried this one too
gm('./project/public/images/webshots/test1.jpg')
.resize(320, 240)
.write('./project/public/images/webshots/test2.jpg', function (err) {
if (!err) console.log('done');
if(err){
console.log(err);
}
});
授予了适当的写入权限
sudo chmod -R 777 ./project/public/images/webshots
我甚至尝试了几种源/目标路径组合。我还能错过什么?
它正在寻找gm(GraphicsMagick)二进制
通过PPA安装GraphicsMagick:
sudo add-apt-repository ppa:dhor/myway
sudo apt-get update
sudo apt-get install graphicsmagick
这对我有效
这帮助我解决了这个问题。
gm('./project/public/images/webshots/test1.jpg')
.options({imageMagick: true})
.resize(320, 240)
.write('./project/public/images/webshots/test2.jpg', function (err) {
if (!err) console.log('done');
if(err){
console.log(err);
}
});
注意:imageMagick应该安装
gm
模块找不到gm
可执行文件的路径。因此,听起来您的$PATH
需要更新,以包括graphicsmagick安装到的路径。
相关文章:
- Javascript,访问一个主要对象模块模式中的每个对象
- 节点Js:How to catch a“;没有这样的文件或目录“;读取线模块出错
- 如何从模块链中调用函数.导出到节点中
- 尽管链接成功并已成功下载,但未找到NPM模块
- 节点是否需要模块传递带有方括号的arg?这是个错误吗
- 从模块内部访问Express装载路径
- RequireJS向模块传递配置总是返回undefined
- Node.js正在更改应用程序以使用集群模块
- 在Meteor项目中安装并包含npm模块后出错
- 模块模式和这个
- 将依赖外部库的UMD模块与browserfy捆绑在一起
- 找不到模块捆绑包
- JavaScript命名约定;静态“;类或模块
- 显示模块模式在Knockout中设置模型的新实例
- 有没有比在app.js上绑定模块名称更好的方法来动态加载视图模型和视图以显示模态
- Javascript模块系统I'I’我正在努力,但搞不明白
- 如何捆绑循环相关模块
- 如何捆绑commonjs模块,除非指定需要
- Node.js:错误:使用GM模块时生成ENOENT
- nodejs - 错误:在使用模块 gm 调整图像大小时生成 ENOENT