【问题标题】:How to override npm peerinvalid如何覆盖 npm peerinvalid
【发布时间】:2015-05-12 16:43:30
【问题描述】:

我正在尝试将已指定 peerDependencies 的节点模块安装到旧版本的软件包中。我知道该模块将适用于较新的版本。如何告诉 npm 忽略 peerinvalid 错误?目前peerinvalid 错误正在停止安装过程。

这是错误:

npm ERR! peerinvalid Peer xxx@x.x.x wants xxx@x.x.x

谢谢!

【问题讨论】:

  • 好吧,它想要什么?请发布其余的错误消息。
  • @shmuli,感谢您的评论。我实际上对提供依赖项不感兴趣。我想知道如何强制 npm 继续安装过程,尽管出现 peerinvalid 错误。如果你真的很好奇它的反应是 v0.12.x,v0.13.0 刚刚发布,但是许多模块的 peerDependency 为 0.12.x

标签: javascript node.js npm package-managers


【解决方案1】:

一个非常老套/临时的解决方法是修改已安装包的 package.json 并指定 peerDependency,删除将 react 指定为 peerDependency 的行。

如果您(或同事)需要从头开始 npm install 您的包的要求,则此 hack 将消失。就像我说的,一个糟糕的临时解决方法。

【讨论】:

【解决方案2】:

在 NPM v3 中,对等依赖项显示警告而不是错误。

我们还将改变 npm@3 中 peerDependencies 的行为。我们将不再自动下载对等依赖项。相反,如果尚未安装对等依赖项,我们会警告您。这需要您自己手动解决 peerDependency 冲突,但从长远来看,这应该会降低您最终遇到包依赖项的棘手问题的可能性。

http://blog.npmjs.org/post/110924823920/npm-weekly-5

【讨论】:

    猜你喜欢
    • 2023-03-13
    • 2016-12-28
    • 2018-09-04
    • 2018-11-01
    • 1970-01-01
    • 2016-12-01
    • 2019-08-29
    • 2013-03-26
    相关资源
    最近更新 更多