执行“npm install”后安装了太多 npm 模块

2023-12-20

My package.json:

{
  "name": "thumbnaillist-gulp",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "",
  "license": "ISC",
  "dependencies": {
    "browserify": "^12.0.1",
    "gulp": "^3.9.0",
    "gulp-concat": "^2.6.0",
    "gulp-react": "^3.1.0",
    "gulp-util": "^3.0.7",
    "react": "^0.13.3",
    "react-script-loader": "0.0.1",
    "reactify": "^1.1.1",
    "vinyl-source-stream": "^1.1.0",
    "watchify": "^3.6.1"
  }
}

奇怪的是,当我执行“npm install”后,除了依赖项字段中列出的模块之外,还安装了其他模块,例如

drwxr-xr-x  14 xxx  wheel   476B Nov 18 18:41 acorn
drwxr-xr-x   7 xxx  wheel   238B Nov 18 18:41 amdefine
drwxr-xr-x   6 xxx  wheel   204B Nov 18 18:41 ansi-green
drwxr-xr-x   6 xxx  wheel   204B Nov 18 18:41 ansi-regex
drwxr-xr-x   6 xxx  wheel   204B Nov 18 18:41 ansi-styles
drwxr-xr-x   6 xxx  wheel   204B Nov 18 18:41 ansi-wrap
drwxr-xr-x   6 xxx  wheel   204B Nov 18 18:41 anymatch
drwxr-xr-x   9 xxx  wheel   306B Nov 18 18:41 archy
drwxr-xr-x   6 xxx  wheel   204B Nov 18 18:41 arr-diff
drwxr-xr-x   6 xxx  wheel   204B Nov 18 18:41 arr-flatten
drwxr-xr-x   5 xxx  wheel   170B Nov 18 18:41 array-differ
drwxr-xr-x   8 xxx  wheel   272B Nov 18 18:41 array-filter
drwxr-xr-x   9 xxx  wheel   306B Nov 18 18:41 array-map
drwxr-xr-x   9 xxx  wheel   306B Nov 18 18:41 array-reduce
drwxr-xr-x   6 xxx  wheel   204B Nov 18 18:41 array-slice
drwxr-xr-x   5 xxx  wheel   170B Nov 18 18:41 array-uniq
drwxr-xr-x   6 xxx  wheel   204B Nov 18 18:41 array-unique
drwxr-xr-x   6 xxx  wheel   204B Nov 18 18:41 arrify
drwxr-xr-x   8 xxx  wheel   272B Nov 18 18:41 asn1.js
drwxr-xr-x  10 xxx  wheel   340B Nov 18 18:41 assert
drwxr-xr-x  10 xxx  wheel   340B Nov 18 18:41 ast-types
drwxr-xr-x   9 xxx  wheel   306B Nov 18 18:41 astw
drwxr-xr-x   9 xxx  wheel   306B Nov 18 18:41 async-each
drwxr-xr-x  11 xxx  wheel   374B Nov 18 18:41 balanced-match
drwxr-xr-x   8 xxx  wheel   272B Nov 18 18:41 base62
drwxr-xr-x   9 xxx  wheel   306B Nov 18 18:41 base64-js
drwxr-xr-x   6 xxx  wheel   204B Nov 18 18:41 beeper
drwxr-xr-x   6 xxx  wheel   204B Nov 18 18:41 binary-extensions
drwxr-xr-x  10 xxx  wheel   340B Nov 18 18:41 bn.js
drwxr-xr-x   7 xxx  wheel   238B Nov 18 18:41 brace-expansion
drwxr-xr-x   7 xxx  wheel   238B Nov 18 18:41 braces
drwxr-xr-x   7 xxx  wheel   238B Nov 18 18:41 brorand
drwxr-xr-x  13 xxx  wheel   442B Nov 18 18:41 browser-pack
drwxr-xr-x   7 xxx  wheel   238B Nov 18 18:41 browser-resolve
drwxr-xr-x  12 xxx  wheel   408B Nov 18 18:41 browserify
drwxr-xr-x  17 xxx  wheel   578B Nov 18 18:41 browserify-aes
drwxr-xr-x   8 xxx  wheel   272B Nov 18 18:41 browserify-cipher
drwxr-xr-x   7 xxx  wheel   238B Nov 18 18:41 browserify-des
drwxr-xr-x   8 xxx  wheel   272B Nov 18 18:41 browserify-rsa
drwxr-xr-x  16 xxx  wheel   544B Nov 18 18:41 browserify-sign
drwxr-xr-x   8 xxx  wheel   272B Nov 18 18:41 browserify-zlib
drwxr-xr-x  11 xxx  wheel   374B Nov 18 18:41 buffer
drwxr-xr-x  11 xxx  wheel   374B Nov 18 18:41 buffer-xor

有什么提示吗?我的 NPM 坏了吗?或者我没有写package.json以正确的方式。


不,没有什么问题,NPM 现在将所有依赖项安装到根模块文件夹中,除非存在版本冲突。您看到的所有其他模块都是您安装的模块的依赖项。

来自NPM 3.0.0 发行说明 https://github.com/npm/npm/releases/tag/v3.0.0:

您的依赖项现在将最大限度地平坦安装。只要可能,所有依赖项及其依赖项以及它们的依赖项都将安装在项目的 node_modules 文件夹中,没有嵌套。仅当两个(或更多)模块具有冲突的依赖关系时,您才会看到彼此嵌套的模块。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

执行“npm install”后安装了太多 npm 模块 的相关文章

随机推荐

  • 向现有 Corda 网络添加新节点

    我正在尝试在 corda 网络中添加新节点和现有节点 我是作为文档做的 但无法实现 正如文档中所述 这足以创建一个包含 node conf 的文件夹吗 如果那么它在运行引导程序时不会更新文件夹中的数据和信息 但我可以通过添加 corda 和
  • 单元测试中的修补不起作用,正在调用实际方法

    我有一个 python 文件 update baseline manifest py 现在 我正在编写单元测试 想要修补 read file 和 write file 我已经这样做了 def update baseline manifest
  • 覆盖 dll 类属性集

    我在我的项目中使用了一千个封闭的 DllClass 实例 public sealed class DllClass public DllClass public string DllClassProperty get set DllClas
  • 获取异常 JDBC 类型没有方言映射

    我是 hibernate 和 java 的新手 我正在尝试执行本机 sql 查询 但我被卡住了 任何人都可以帮助我或检查我在哪里做错了吗 我的java代码是 try trns session beginTransaction String
  • Django 和 node.js :抛出参数[1]; // 未处理的“错误”事件

    我正在尝试 Django socket io 和 node js 示例实时 Django https github com mburst django realtime tutorial git 当我尝试从浏览器发送消息时 我从节点服务器收
  • 如何绘制具有两个刻度的 x 轴?

    我想画一个有两个刻度的x轴 如下图所示 ggplot2版本可以是这样的 library ggplot2 x c 1 2 3 4 5 10 20 30 40 50 y c 1 2 2 3 4 2 1 3 5 5 You should intr
  • 无法让 Robotium 在 Android Studio 中工作

    我正在努力让 Robotium 在基于 gradle 的 Android Studio 上工作 但我找不到方法 这是我的 build gradle 文件 buildscript dependencies repositories maven
  • 展平 JToken

    假设我有以下 JToken data company ID 12345 location Some Location name Some Name 我想将此令牌传递到输出此 JToken 的 FlattenToken 函数中 data co
  • 什么是代表图例或图表键的好图标?

    我正在实现一个小型网络应用程序小部件 它显示图表 或图表 地图 图形 其他 的图例 键 但仅在鼠标悬停在小部件上时显示 它基本上只是一个带有背景图像的 div 什么是一个好的图标来向不熟悉的用户传达 我展示传奇 或 我就是传奇 我正在寻找
  • 如何使用python的多处理来终止进程

    我有一些代码需要针对其他几个系统运行 这些系统可能会挂起或出现不受我控制的问题 我想使用 python 的多处理来生成子进程以独立于主程序运行 然后当它们挂起或出现问题时终止它们 但我不确定解决此问题的最佳方法 当调用终止时 它确实会杀死子
  • 比较对象数组

    我正在寻找一种比较 PHP 中对象数组的简洁方法 我知道我可以只检查大小相等的数组 然后循环遍历一个数组 查找第二个数组中的每个对象 但我认为使用一个或多个数组比较函数会更好 我已经测试了几个对象数组 我遇到的主要问题是数组比较函数坚持将元
  • 寻找空闲的中断槽

    有些小丑 BIOS DOS TSR 在中断向量表中写入了随机数据 我知道这一点是因为反汇编告诉我的 通常 在获取中断向量之前 我会验证所选的 IVT 插槽是否为空 但有了这一切遗留数据 一个不起眼的应用程序如何知道挂接特定中断向量仍然是安全
  • 为什么要在 golang 中使用组合?

    在下面的代码中 我展示了我认为 golang 中的嵌入 方法得到提升 和组合 方法不得到提升 之间的区别 为什么你想在 golang 中使用组合 type obj1Inherited struct obj2 type obj1Compose
  • 在 ASP 中使用 WinHttp.WinHttpRequest.5.1 进行异步 HttpRequest

    我试图制作 LINK FINDER 并面临2个问题 问题 1 已解决 无法获取重定向页面的 url 这已解决参考链接 https stackoverflow com questions 20358654 serverxmlhttp requ
  • Jackson Mapper - 如何在 null 或空值上失败

    我们在代码中使用 Jackson JSON 映射器来反序列化一些配置对象 当特定字段丢失或为空时 我们希望 Jackson 反序列化失败 Jackson 支持这种行为的唯一功能是针对原语 final DeserializationConfi
  • Python - Docker 客户端连接中的 tlsv1 警报协议版本错误

    我在用着Docker py https docker py readthedocs io en latest api and 码头工人 https github com d11wtq dockerpty为了exec命令使用DockerPyt
  • 无法应用插件 Android Gradle 插件 3.0.0-alpha5 不得应用于项目

    使用最新的Android Studio 3 0 Canary 5 这是错误 错误 1 1 评估项目 app 时出现问题 无法应用插件 类 com android build gradle api AndroidBasePlugin Andr
  • 卡片上的 Ionic 长按事件

    如何在 Ionic 中为卡片设置长按事件以启动特定卡片的操作表 帮我在 ionic 中绑定这个长按事件 Ionic 4 种手势 安装 HammerJs npm install hammerjs 里面 src main ts Hammerjs
  • 何时使用 GenericServlet 而不是 HttpServlet?

    我知道 GenericServlet 是独立于协议的 并且是一个抽象类 所以我的问题是 什么时候有人会选择使用 GenericServlet 您是否知道任何使用 GenericServlet 的具体示例 我总是将 servlet 与 HTT
  • 执行“npm install”后安装了太多 npm 模块

    My package json name thumbnaillist gulp version 1 0 0 description main index js scripts test echo Error no test specifie