Gruntjs npm:“是的;错误:无效版本:1.0“;安装grunt插件时

Gruntjs npm:“是的;错误:无效版本:1.0“;安装grunt插件时,gruntjs,Gruntjs,虽然昨天一切正常,但今天当我尝试安装grunt插件时,无论它是官方grunt contrib还是供应商插件,我得到了下面打印的错误。 我正在运行grunt v0.4、节点v0.8.20和npm v1.2.11、System X 10.8.2 npm install grunt-<plugin>-<name> --save-dev npm ERR! Error: invalid version: 1.0 npm ERR! at validVersion (/usr/

虽然昨天一切正常,但今天当我尝试安装grunt插件时,无论它是官方grunt contrib还是供应商插件,我得到了下面打印的错误。 我正在运行grunt v0.4、节点v0.8.20和npm v1.2.11、System X 10.8.2

npm install grunt-<plugin>-<name> --save-dev
npm ERR! Error: invalid version: 1.0
npm ERR!     at validVersion (/usr/local/lib/node_modules/npm/node_modules/read-package-json/read-json.js:590:40)
npm ERR!     at final (/usr/local/lib/node_modules/npm/node_modules/read-package-json/read-json.js:342:23)
...
npm安装grunt--save dev
npm错误!错误:无效版本:1.0
npm错误!在有效版本(/usr/local/lib/node_modules/npm/node_modules/read package json/read json.js:590:40)
npm错误!最终(/usr/local/lib/node_modules/npm/node_modules/read package json/read json.js:342:23)
...
令我惊讶的是,官方grunt contrib插件(grunt contrib xxx)也未能安装,尽管我希望它具有正确的semver版本语法。npm-debug.log除了控制台中的详细输出外,没有显示任何其他内容

如有任何提示,我们将不胜感激

提前Thx
felic

由于grunt 0.4针对的是node的v1,可能您尝试安装的插件要求node的1.0版本,请尝试阅读您尝试安装的插件的package.js。
正如glortho所问,您可以明确地告诉我们是什么插件导致了问题

因为grunt 0.4针对的是node的v1版本,可能您尝试安装的插件要求1.0版本的node,请尝试阅读您尝试安装的插件的package.js。
正如格洛托所问,你可以明确地告诉我们是什么插件导致了这个问题

很抱歉这么晚才回复


我不熟悉grunt/nodejs的东西,所以我有点困惑,花了一段时间才明白问题所在:我将
grunt
更新为0.4.~当时没有编辑相关的project package.json来反映正确的grunt版本控制(“1.0.0”而不是“0.1.0”)。谢谢你的帮助。

很抱歉这么晚才回复

我不熟悉grunt/nodejs的东西,所以我有点困惑,花了一段时间才明白问题所在:我将
grunt
更新为0.4.~当时没有编辑相关的project package.json来反映正确的grunt版本控制(“1.0.0”而不是“0.1.0”)。感谢您的帮助。

将package.json修改为

"devDependencies" : {
   "grunt" : "latest" 
}
快跑

sudo npm install
这将安装最新的grunt

[注意:向对象添加所需的依赖项,命令将在运行时安装所有依赖项]

将package.json修改为

"devDependencies" : {
   "grunt" : "latest" 
}
快跑

sudo npm install
这将安装最新的grunt


[注意:向对象添加必需的依赖项,命令将在运行时安装所有依赖项]

是的,grunt文档和symver文档都没有明确说明这一点,但这是必需的。您可以这样进行验证:
node node\u modules/semver/bin/semver 1.0.0;echo$?
应返回版本,然后是退出状态代码0,表示成功。无效版本将返回失败状态代码1。您不必手动编辑
package.json
文件。运行
$npm install grunt--save dev
grunt
将更新到最新版本,同时将依赖项的更新版本自动写入
package.json
文件(因为
--save dev
部分)。这对于任何其他依赖项或
grunt
插件都是一样的。当我将我的应用程序版本从预发布的0.9.4更改为1.0.0.0时,我遇到了这个问题。结果表明,npm不喜欢4位数的版本号。一旦我把它改为1.0.0,一切又恢复了。是的,grunt文档和symver文档都没有把这一点说得很清楚,但是虚线三元组是必需的。您可以这样进行验证:
node node\u modules/semver/bin/semver 1.0.0;echo$?
应返回版本,然后是退出状态代码0,表示成功。无效版本将返回失败状态代码1。您不必手动编辑
package.json
文件。运行
$npm install grunt--save dev
grunt
将更新到最新版本,同时将依赖项的更新版本自动写入
package.json
文件(因为
--save dev
部分)。这对于任何其他依赖项或
grunt
插件都是一样的。当我将我的应用程序版本从预发布的0.9.4更改为1.0.0.0时,我遇到了这个问题。结果表明,npm不喜欢4位数的版本号。一旦我把它改为1.0.0,一切都恢复正常了?沃特?现在是2014年,node仍然在node的0.10v1上?沃特?现在是2014年,节点仍处于0.10