23

当我尝试使用“grunt build”构建项目时遇到了这个错误。

截屏

当我通过“grunt server”测试项目时似乎没有问题。

该项目已通过 yeoman/grunt/bower 搭建和管理。在 Windows 中。

一切都很顺利,然后一周前左右开始这样做。我不能再建立项目了。

当我尝试安装模块时:

npm install grunt-contrib-imagemin

它永远无法安装它,出现以下“奇怪”错误。

在此处输入图像描述

请问有什么提示吗?

4

8 回答 8

43

好的,我找到了解决此问题的方法:

  • 在您的 package.json 中,在对 imagemin 的引用之前添加 "jpegtran-bin": "0.2.0"
  • 删除项目中的 node_modules 文件夹,然后再次运行“npm install”和“bower install”

jpegtran 的最新版本似乎存在问题。

!!- 请注意,这只是等待错误修复的解决方法。

于 2013-11-11T14:25:09.853 回答
6

就像程序建议的那样,您需要安装npm模块。

npm i --save-dev grunt-contrib-imagemin

考虑到您使用的是 Windows,您可能需要查看项目的 GitHub 存储库以获取其他安装说明。

于 2013-11-11T13:12:15.410 回答
3

软件包 contrib-imagemin 引用存在问题,阻止它在 Windows 上正确安装。

关于 grunt-contrib-imagemin 的 GitHub 问题:https ://github.com/gruntjs/grunt-contrib-imagemin/issues/109

关于违规库的 GitHub 拉取请求:https ://github.com/yeoman/node-jpegtran-bin/pull/38

现在,您可以在 package.json 中手动指定 "jpegtran-bin": "0.2.0" ,它应该可以作为一种解决方法。如果这对您来说是一个痛点,请对该拉取请求发表评论,也许它会说服项目维护者实际查看并发表评论。

于 2013-11-11T16:53:57.587 回答
3

我在 0.3.0 版本上遇到了同样的问题,但是一旦我更新到 0.4.0,问题就解决了。检查你的 package.json。希望有帮助!

"grunt-contrib-imagemin": "~0.4.0",
于 2013-11-28T01:26:53.057 回答
2

截至 2015 年 5 月,我通过删除 node_modules 并运行 npm install 解决了这个问题。

于 2015-05-21T22:33:12.640 回答
0

我正在使用Windows,我遇到了同样的错误。所以我编辑了Environmental Variables.

只需添加:C:\Ruby200-x64\bin到您的PATH变量并重新启动节点提示。

于 2013-11-14T06:42:35.373 回答
0

调用时,imagemin安装似乎无法正确运行grunt-contrib-imagemin。我只是做

cd ./node_modules/grunt-contrib-imagemin/node_modules/imagemin
npm install

然后就好了。

于 2015-01-08T16:02:47.607 回答
0

在 Ubuntu 14.04.3 LTS 上,package.json 包含:

 "grunt-contrib-imagemin": "~0.4.0",

我不得不重新安装 Grunt(但jpegtran-bin解决方法,或者只是删除 node_modules 并运行npm install是不够的,我需要以下内容(使用 sudo):

rm -rf node_modules/
sudo npm update -g npm
sudo npm install -g grunt-cli
于 2015-08-27T21:43:22.603 回答