有没有办法下载 package-lock.json/yarn.lock 文件中的所有依赖项而不安装它们?

Is there a way to download all dependencies in a package-lock.json/yarn.lock file without installing them?

我正在尝试为任意 JavaScript 项目在 Nexus NPM 代理存储库中暂存来自 NPM 注册表的依赖项。我可以执行 npm installyarn install 这将导致所有依赖项都被暂存,但我想避免这种情况。主要原因是我想避免需要安装必要的 C/C++ 库来编译作为 NodeJS C/C++ 附加组件的依赖项。

我能想到的唯一解决方案是解析 package-lock.json/yarn.lock 文件和每个依赖项的 运行 npm pack <dependency>,这将导致 npm 获取需要的依赖项并将依赖项的 tarball 复制到当前目录。然后我可以删除每个下载的 tarball。

npm 或 yarn 是否有更优雅的解决方案?

如果你 运行 npm install --ignore-scripts 那么安装脚本将被忽略,因此任何 C/C++ 文件将不再被构建。