尽管固定了“ resolutions”,但是yarn仍坚持下载最新的打字稿

时间:2019-03-11 14:36:34

标签: node.js typescript npm yarnpkg

角度构建(yarn ng build --prod [...])报告:

@angular/compiler-cli@7.2.8 requires typescript@'>=3.1.1 <3.3' but 3.3.3333 was found instead.
Using this version can result in undefined behaviour and difficult to debug problems.

Please run the following command to install a compatible version of TypeScript.

    npm install typescript@">=3.1.1 <3.3"

To disable this warning run "ng config cli.warnings.typescriptMismatch false".

我的package.json说:

  [...]

  "resolutions": {
    "typescript": "3.2.4"
  }

  [...]

npmvet报告说typescript的安装版本是3.3.3333;必需的版本是3.2.4,并且此软件包未锁定。

如果我跳过纱线并运行npm install,它将正确安装3.2.4(尽管据npmvet称,它并未锁定)。

在这种情况下为什么resolutions不起作用?

是否有更好的方法来配置可重复的节点环境,从而使npm和yarn都使用符合所有必需版本的 intersection 的版本?

在我的项目中,同时需要typescript作为3.2.4和^ 3.2.4(这使3.2.4成为一个完美的匹配)。为什么在这种情况下yarn和npm不使用3.2.4?

(我知道有些要求没有交叉点,例如node-sass@4.11.0和node-sass@4.9.3;您如何解决此类问题?)

0 个答案:

没有答案