【问题标题】:npm install <package> installs package, PLUS entire package.jsonnpm install <package> 安装包,加上整个 package.json
【发布时间】:2019-04-25 02:55:29
【问题描述】:

当我运行npm install &lt;package&gt;@&lt;version&gt; 时,我试图只安装一个特定的包,但是,整个package.json 依赖项与&lt;package&gt; 一起安装。有什么方法可以阻止所有其他依赖项安装并只关注特定的包?

根据前几个回复,--no-optional 似乎是答案,但这对我不起作用。在第一次使用--no-optional 安装时,它只安装一个包。但是如果我运行一个

npm i
rm -rf node_modules
npm i --no-optional <package>@<version>

它将重新开始安装整个依赖列表。尝试使用此package.json 进行复制

{
  "name": "my-app",
  "dependencies": {
    "is-sorted": "^1.0.5",
    "moment": "2.24.0"
  }
}

--no-optional 标志在连续运行时不起作用。运行npm cache clean --force 也无济于事

【问题讨论】:

  • 您是指仅可选依赖项吗?使用--no-optional 标志。非可选依赖项,没有必要的依赖项安装包是没有意义的。我想如果你真的需要,你可以运行安装,然后手动将它们从你的 package 和 package.json 文件中删除。我不会推荐它。
  • 我已经更新了我的问题,包括为什么 --no-optional 不适合我
  • npm i 将安装缺少的依赖项。不要在没有--no-optional 标志的情况下运行npm i

标签: npm-install


【解决方案1】:

--no-optional 参数将阻止安装可选依赖项。

【讨论】:

    【解决方案2】:

    如果要避免安装可选依赖项,请使用--no-optional

    如果您出于特定原因想要在没有任何依赖项的情况下安装它,目前这是不可能的。它已被多次请求,请参见此处:

    [编辑]您可能还想查看这些主题:

    【讨论】:

      猜你喜欢
      • 2016-10-02
      • 2014-10-08
      • 2019-10-10
      • 2015-10-06
      • 2015-02-21
      • 2018-07-28
      • 2014-03-20
      • 2022-12-13
      • 2017-02-10
      相关资源
      最近更新 更多