【自动化】使用lerna管理包依赖

使用lerna管理包依赖

相关文章

使用lerna管理包依赖


一、lerna是什么

Lerna 是一个用于管理 JavaScript 项目的工具,特别是针对包含多个包(packages)的项目。它提供了一种简化和自动化多包存储库的版本管理、发布、依赖管理等任务的方法。

Lerna 可以帮助解决以下问题:

  • 版本管理:对于包含多个包的项目,手动管理每个包的版本可能会变得复杂。Lerna 可以帮助自动化这个过程,统一管理所有包的版本,确保它们保持同步。

  • 发布管理:发布多个包时,需要确保它们之间的依赖关系和版本兼容性。Lerna 可以简化并自动化发布过程,确保所有包都按照正确的顺序和版本发布。

  • 依赖管理:在多包项目中,管理依赖关系可能会变得复杂。Lerna 可以帮助管理项目级别和包级别的依赖,确保它们之间的一致性和正确性。

  • 代码共享:Lerna 提供了一些功能,如交叉包测试、符号链接等,可以帮助在项目中共享代码和资源,提高代码重用性和可维护性。

二、接入leran

全局安装

1
npm install -g lerna@4

初始化新项目

该命令会在项目根目录生成一个lerna.json文件

1
lerna init

修改packages目录

打开lerna.json文件,修改packages为对应组件目录

添加新包

1
lerna create <package-name>

至此,我们得到了一个这样的文件夹

设置包可以被公开可访问

修改新包的package.json,添加如下配置

1
2
3
"publishConfig": {
"access": "public"
},

新增LICENSE.md文件

LICENSE.md 是一个项目中包含的许可证文件。发布到npm上必须包含这个文件,内容可以为空。

修改源码目录

leran默认的源码目录是lib,如果要修改,比如改为src,则需要修改package.json中的main字段

1
"main": "lib/Test.js",

支持,leran发包准备工作基本完成。

三、终端登录npm

注册npm账号

npm官网:https://www.npmjs.com

执行登录

根据指引完成登录

1
npm login

确认登录成功

1
2
PS D:\codes\pandoras-component> npm whoami
jixiaojiao

看到自己npm账户的用户名表示ok了

四、发布包

  • 选择版本

  • 发布成功

  • 访问npm验证

五、常见问题

lerna ERR! E404 Not found

如果你遇到这个错误,则是你的包名含有组织前缀,则需要在npm上提前创建

例如我的包名是@pandoras/product,则我就需要创建一个pandoras组织


【自动化】使用lerna管理包依赖
https://www.cccccl.com/20230522/工程化/自动化/使用lerna管理包依赖/
作者
Jeffrey
发布于
2023年5月22日
许可协议