lerna 备忘

2020-03-04

Lerna 是一个多包(参考 monorepo)管理工具。

Lerna is a fast modern build system for managing and publishing multiple JavaScript/TypeScript packages from the same repository.

初始化项目

转到目标文件夹:

lerna init

默认工程结构:

├── lerna.json
├── package.json
└── packages

lerna.json 里的版本号默认是 0.0.0,可以改成其他的。

创建模块

lerna create {pkg_name} [pkg_path]

比如:

lerna create @xesam/api
lerna create @xesam/spi-1
lerna create @xesam/spi-2
lerna create @xesam/spi-3

为模块增加依赖

lerna create {dependency_name} 

比如:

lerna add axios # 给所有模块增加 axios 依赖
lerna add axios --scope=@xesam/api # 给 @xesam/api 模块增加 axios 依赖

安装依赖

lerna bootstrap

如果无效,就直接手动执行:

lerna exec npm install
lerna link

其他参考文章

https://juejin.cn/post/6844903856153821198 https://blog.51cto.com/u_14115828/3733816 https://lerna.js.org/


文档信息 by XiaoPingYuan

版权声明:自由转载-非商用-非衍生-保持署名。发表日期:2020-03-04 by XiaoPingYuan(https://xesam.github.io/)