【自动化】使用lerna管理包依赖
使用lerna管理包依赖
相关文章
- 自动化解决方案
- 使用Jest给组件库做单元测试
- 使用docker容器化部署
- 使用Jenkins实现自动化部署
- 使用lerna管理包依赖
- 使用jsdoc实现自动生成文档
- 使用puppeteer实现自动化测试
使用lerna管理包依赖
一、lerna是什么
Lerna 是一个用于管理 JavaScript 项目的工具,特别是针对包含多个包(packages)的项目。它提供了一种简化和自动化多包存储库的版本管理、发布、依赖管理等任务的方法。
Lerna 可以帮助解决以下问题:
版本管理:对于包含多个包的项目,手动管理每个包的版本可能会变得复杂。Lerna 可以帮助自动化这个过程,统一管理所有包的版本,确保它们保持同步。
发布管理:发布多个包时,需要确保它们之间的依赖关系和版本兼容性。Lerna 可以简化并自动化发布过程,确保所有包都按照正确的顺序和版本发布。
依赖管理:在多包项目中,管理依赖关系可能会变得复杂。Lerna 可以帮助管理项目级别和包级别的依赖,确保它们之间的一致性和正确性。
代码共享:Lerna 提供了一些功能,如交叉包测试、符号链接等,可以帮助在项目中共享代码和资源,提高代码重用性和可维护性。
二、接入leran
全局安装
1 |
|
初始化新项目
该命令会在项目根目录生成一个lerna.json文件
1 |
|
修改packages目录
打开lerna.json文件,修改packages为对应组件目录
添加新包
1 |
|
至此,我们得到了一个这样的文件夹
设置包可以被公开可访问
修改新包的package.json,添加如下配置
1 |
|
新增LICENSE.md文件
LICENSE.md 是一个项目中包含的许可证文件。发布到npm上必须包含这个文件,内容可以为空。
修改源码目录
leran默认的源码目录是lib,如果要修改,比如改为src,则需要修改package.json中的main字段
1 |
|
支持,leran发包准备工作基本完成。
三、终端登录npm
注册npm账号
npm官网:https://www.npmjs.com
执行登录
根据指引完成登录
1 |
|
确认登录成功
1 |
|
看到自己npm账户的用户名表示ok了
四、发布包
选择版本
发布成功
访问npm验证
五、常见问题
lerna ERR! E404 Not found
如果你遇到这个错误,则是你的包名含有组织前缀,则需要在npm上提前创建
例如我的包名是@pandoras/product
,则我就需要创建一个pandoras
组织