我曾经执行grunt contrib imagemin来压缩png等,但更新后就不起作用了。我发现它从v0.2.0开始就出错了错误消息如下:
PS F:PHPnow-1.5.6htdocsmap> grunt imagemin -g gruntfile.js -s
Running "imagemin:dist" (imagemin) task
✔ app/images/apple-touch-icon.png (saved 11.99 kB)
✔ app/images/bg_loading.png (saved 7.68 kb)
✔ app/images/bg_positiong_no.png (saved 7.59 kb)
✔ app/images/button-green-press.png (saved 1.13 kB)
✔ app/images/button-green.png (saved 1.13 kB)
✔ app/images/button-red-press.png (saved 1.13 kB)
✔ app/images/button-red.png (saved 1.11 kB)
Fatal error: spawn ENOENT
我现在也面临这个问题。但对我来说,只有JPEG图像有这个问题,而不是PNG。
我已经为两者分离了目标,比如:
imagemin: {
png: {
options: {
optimizationLevel: 7,
pngquant: true
},
files: [{
expand: true,
cwd:"images/",
src: ["**/*.png"],
dest: "images/r/",
ext: ".png"
}]
},
jpg: {
options: {
progressive: true
},
files: [{
expand: true,
cwd:"images/",
src: ["**/*.jpg"],
dest: "images/r/",
ext: ".jpg"
}]
}
},
现在grunt imagemin:png
没有这个错误,但grunt imagemin:jpg
有。希望这对你有所帮助。
更多信息请点击此处:https://github.com/gruntjs/grunt-contrib-imagemin/issues/61#issuecomment-28982953
这里有一个解决此问题的方法:Npm模块"grunt contrib imagemin";找不到,是否已安装?
推荐的解决方案对我有效。