Neatbo.

npm 锁文件声明副本清单

检查 package-lock v2/v3 安装声明,区分同名副本、别名、链接、工作区和未知版本。

浏览器本地处理输入package-lock v2 / v3 JSON输出JSON / CSV单个文件最多 1 MiB · 最多 1 个
  1. 1添加输入
  2. 2确认后运行
  3. 3获取结果

工具输入和文件在当前浏览器处理,不会上传。

输入内容

切换工具时在当前标签页临时保留输入。刷新或关闭后清除,较大的结果可能需要重新生成。

⌘ / Ctrl + Enter 运行

或将文件拖到这里

文件留在当前设备,原始文件不会被覆盖。

.json

单个文件最多 1 MiB · 最多 1 个

    0 个字符 · 0 字节
    正在准备处理工具…

    开始之前

    排查依赖重复前先核对锁文件声明。保留安装路径与版本,不假设每条声明都已存在于磁盘。

    如何使用

    1. 粘贴或打开 package-lock.json,确认版本为 2 或 3。
    2. 核对声明副本和重复包名,再分别检查别名、链接、工作区及未知版本。
    3. 下载 JSON 快照或路径级 CSV;修改依赖前另行使用包管理器与文件系统检查。

    支持范围与限制

    一份 UTF-8 package-lock JSON 文件或粘贴输入,最多 1 MiB;已选文件优先。支持含 packages 对象的 lockfileVersion 2 或 3,最多 10,000 条声明及 512 字符相对路径;拒绝重复 JSON 键和非法描述/路径。

    根包条目不计入副本。node_modules 下非链接条目视为安装声明,同名包按路径分组;明确 name 与安装槽不同则归类别名。缺版本保持未知,不假设版本字符串都是 SemVer。

    link:true 条目单列声明目标;非 node_modules 位置作为工作区声明。读取 packages 时忽略 v2 旧 dependencies,避免重复计算兼容快照。来源类型仅为标签,不请求 URL 或打开本地目标。

    此工具只检查锁文件快照,不扫描磁盘、不验证安装、不审计漏洞,也不证明 npm 可以去重。JSON 保留精确声明版本,CSV 使用表格安全处理;预览最多 200 条安装声明。

    操作示例

    示例输入

    {"lockfileVersion":3,"packages":{"":{},"node_modules/a":{"version":"1.0.0"},"node_modules/b/node_modules/a":{"version":"2.0.0"}}}
    示例参数
    {"params": {}}

    示例输出

    {
      "lockfileVersion": "3",
      "snapshot": "lockfile declarations only",
      "copies": [
        {
          "path": "node_modules/a",
          "slotName": "a",
          "name": "a",
          "alias": false,
          "version": "1.0.0",
          "sourceKind": "unspecified"
        },
        {
          "path": "node_modules/b/node_modules/a",
          "slotName": "a",
          "name": "a",
          "alias": false,
          "version": "2.0.0",
          "sourceKind": "unspecified"
        }
      ],
      "duplicates": [
        {
          "name": "a",
          "copies": 2,
          "versions": [
            "1.0.0",
            "2.0.0"
          ],
          "paths": [
            "node_modules/a",
            "node_modules/b/node_modules/a"
          ]
        }
      ],
      "links": [],
      "workspaces": []
    }

    出现问题时

    使用含 packages 对象的 v2/v3 锁文件。修复非法/重复键 JSON、相对路径及描述字段类型。旧格式应先由项目包管理器生成当前锁文件,再进行检查。

    常见问题

    这些包一定已安装吗?

    不一定。报告只读取所提供锁文件声明,不检查磁盘 node_modules。

    重复包名都能去重吗?

    不能这样判断。版本与依赖约束、链接及安装布局需要另行通过包管理器分析。

    为什么版本显示未知?

    部分描述没有声明 version,报告明确保留缺失,不从 resolved URL 猜测。

    文档与延伸阅读

    相关工具