【问题标题】:How to build node.js projects against local versions of the dependencies?如何针对本地版本的依赖项构建 node.js 项目?
【发布时间】:2022-01-12 22:03:25
【问题描述】:

我一直在尝试针对某些依赖项的本地版本构建一个相对复杂的 node.js 项目 (https://github.com/edrlab/thorium-reader/)。

我可以毫无问题地使用非本地依赖项构建和运行项目。

我尝试了不同的“路线”,例如使用 npm install --save <path-to-dependency> 添加依赖项或仅添加对 package.json 文件的 file:<path-to-dependency> 引用。我已经检查了每个依赖项的确切版本。

npm install 没有显示任何错误。

现在当我运行 npm run start 时,我得到了不太理解的类型错误,例如:

Argument of type 'import("~/repositories/thirdparty/thorium/r2-opds-js/dist/es6-es2015/src/opds/opds2/opds2-facet").OPDSFacet' 
is not assignable to parameter of type 
'import("~/repositories/thirdparty/thorium/thorium-reader/node_modules/r2-opds-js/dist/es6-es2015/src/opds/opds2/opds2-facet").OPDSFacet'.
      Types of property 'Links' are incompatible.

有没有人暗示我在这里做错了什么?

我使用的是 node.js 版本 17.2.0 和 npm 版本 8.2.0。

最好, 否

【问题讨论】:

    标签: node.js typescript npm


    【解决方案1】:

    好的,在摆弄了几个小时之后,我发现使用 npm link 可以解决问题。不知道有什么区别,npm install 根本不起作用,也没有将引用放在 package.json 中。

    也就是说,进入依赖的仓库,运行npm link,将依赖构建为一个模块,然后进入主仓库并运行npm link <dependency> --save

    现在构建过程可以工作了。

    不知道为什么会有两种不同的方法,其中一种在这种情况下不起作用。

    【讨论】:

      猜你喜欢
      • 2020-07-24
      • 2017-11-29
      • 2015-05-13
      • 1970-01-01
      • 1970-01-01
      • 2011-02-03
      • 2016-12-10
      • 2020-02-27
      • 1970-01-01
      相关资源
      最近更新 更多