2016-07-25 36 views
0

这是从我package.json的摘录:的package.json依赖确切的版本不工作

"dependencies": { 
    [...] 
    "jquery": "2.2.3", 
    [...] 
} 

按照package.json documentation(“必须匹配版本完全相同”),它应该与2.2.3版本时,得到的jQuery你做npm install

所以我很惊讶,当我发现,在我的node_modules/jquery/dist文件夹中有一个jquery.js文件,该文件说:jQuery JavaScript库V3.0.0(其中,当然,打破了我的一些代码)

发生了什么事这里?这是一个错误?这是预期的行为,因为其他一些依赖项具有[email protected]子依赖项? 将插入符号放在版本号前面("jquery": "^2.2.3")也是一样。在文档中,在SO或谷歌上找不到任何关于此的信息,所以我们将不胜感激。

回答

0

您是否有npm-shrinkwrap.json文件,这会使npm忽略对您的package.json依赖项的所有更改(devDependencies不受影响)并且具有硬编码的[email protected]版本?

删除该文件并再次运行npm install

如果您需要,请在之后再次运行npm shrinkwrap以使用新版本号重新创建shrinkwrap文件。

在此处查看文档:https://docs.npmjs.com/cli/shrinkwrap