yarn 安装本地 npm 包,以便本地包使用主项目的 node_modules(ckeditor-duplicate-modules 错误)

问题描述 投票:0回答:1

在我的

MainProject
中,我正在尝试安装使用 ckeditor5 包生成器创建的 ckeditor-5 插件
PeteCkPlugin
本地版本

我尝试在本地

yarn link
根目录中使用
PeteCkPlugin
,然后在
yarn link @PeteSpace/PeteCkPlugin
根目录中使用
MainProject
,但出现了
Usage Error: Invalid destination '@PeteSpace/PeteCkPlugin'; Can't link the project to itself
错误。

我也尝试过使用纱线

package.json
分辨率字段:

{
  ...,
  "resolutions": { 
    "@PeteSpace/PeteCkPlugin": "link:/path/to/project/PeteSpace/PeteCkPlugin" 
  },"
  ...
}

成功安装了该软件包,但

MainProject
随后由于
"Uncaught CKEditorError: ckeditor-duplicated-modules Read more: https://ckeditor.com/docs/ckeditor5/latest/support/error-codes.html#error-ckeditor-duplicated-modules"
错误而失败,因为我认为本地
PeteCkPlugin
软件包正在使用它自己的
PeteCkPackage/node_modules/ckeditor package
,而不是共享的
MainProject/node_modules/ckeditor package
...

我还尝试过用

portal:
代替上面分辨率值中的
link:
”...

我还无法发布该包,因为它是私有的,而且我还没有加入正确的 npm 组织。

很高兴听到任何有帮助的想法,我绝对还不了解符号链接以及yarn和npm的幕后情况。

javascript npm hadoop-yarn ckeditor5 ckeditor-plugin
1个回答
1
投票

随着时间的推移,我在使用

yarn link
时遇到了类似的问题,并求助于使用
yalc
来代替,每次都完美无缺。

过程非常简单:

  1. 全局安装Yalc
volta install yalc # or `npm i -g yalc` if you don't use volta
  1. 发布您的依赖项
yalc publish # run from dependency root after build process
  1. 链接依赖项
yalc link # run from the root of your main project

您还可以订阅并自动发布依赖项的更改。

有关更多信息,请参阅官方自述文件

© www.soinside.com 2019 - 2024. All rights reserved.