为什么在node_modules下安装了这么多包?

时间:2016-07-22 00:41:35

标签: node.js visual-studio-2015 npm asp.net-core

我试图了解NPM如何与VS 2015和.Net Core配合使用。我正在学习本教程:http://www.mikesdotnetting.com/article/283/asp-net-5-managing-client-side-dependencies-with-npm-bower-and-gulp

我的package.json看起来像这样:

{
  "version": "1.0.0",
  "name": "asp.net",
  "private": true,
  "devDependencies": {
    "gulp": "3.8.11",
    "gulp-concat": "2.5.2",
    "gulp-cssmin": "0.1.7",
    "gulp-uglify": "1.2.0",
    "rimraf": "2.2.8"
  }
}

我期待在src / node_modules下有Gulp,Gulp-Contact,Gulp-Cssmin,Gulp-Uglify和Rimraf。相反,我看到200多个包和我的package.json中列出的包,只有Gulp似乎已安装。

如何删除我不想要的包装,以及如何确保安装我需要的包装?

编辑:进一步深入研究,我尝试在我的项目目录中使用管理员权限从Powershell运行npm cache clear,我收到了此错误:

Error: EPERM: operation not permitted, rmdir 'C:\Users\me\AppData\Roaming\npm-cache'

这对我来说很令人惊讶,因为我希望缓存能够清除src / node_modules。有谁知道Visual Studio使用哪个版本的Node?和/或VS使用的node.exe通常位于(使用Win 10)

从Visual Studio包管理器控制台运行npm cache clear(以管理员身份运行VS)清除了所有内容。我还不确定为什么会有效。

1 个答案:

答案 0 :(得分:0)

如果您的软件包与我的软件包不同步,请按照以下步骤消除不需要的软件包,并确保您拥有package.json中列出的软件包。

  1. 关闭Visual Studio
  2. 删除src中的bower_components和node_modules目录。
  3. 使用管理员权限重新打开VS,但不要重新打开该项目。
  4. 从程序包管理器控制台运行npm cache clear
  5. 注意: npm必须是环境变量,您必须安装Node.js或将Visual Studios Node.js设置为PATH。

    这是一篇关于如何使用新版npm的好文章,而不是VS2015安装的版本。 http://jameschambers.com/2015/09/upgrading-npm-in-visual-studio-2015/