扩展快速开始
扩展快速开始
功能
本页从一个 calc 计算扩展示例开始,演示如何创建扩展开发目录、构建 .bts 包、安装到项目并在 main.bt 中调用。零基础用户建议先按本页跑通流程,再阅读 运行机制。
语法
快速开始会用到这些命令:
bt ext new calc bt ext build calc -o calc.bts bt ext check calc.bts bt ext info calc.bts bt ext install calc.bts project bt main.bt
参数
| 参数 | 说明 |
|---|---|
calc | 扩展开发目录名,也会作为默认扩展名。 |
calc.bts | 构建输出的扩展包文件。 |
project | 要安装扩展的目标 BT 项目目录。 |
main.bt | 项目入口脚本。 |
准备项目
先准备一个普通 BT 项目目录:
project/ └── main.bt
main.bt 用来调用扩展:
result = calc(1).add(2).value() // 输出:3 print result
此时还没有安装 calc 扩展,直接运行会找不到 calc。下一步先创建扩展。
创建扩展
执行:
bt ext new calc
这会生成一个纯 BT 扩展开发目录:
calc/ ├── manifest.json ├── bindings.json └── src/ └── lib.bt
默认脚手架已经包含一个链式计算对象:calc(1).add(2).value()。
构建扩展包
在 calc 目录外执行:
bt ext build calc -o calc.bts
构建时会读取 manifest.json 和 bindings.json,检查入口源码,并把开发目录打包成 calc.bts。
构建后可以先检查包信息:
bt ext check calc.bts bt ext info calc.bts
安装到项目
把扩展安装到项目目录:
bt ext install calc.bts project
安装后的结构是:
project/ ├── main.bt └── extensions/ └── calc.bts
然后在 project 目录运行项目:
bt main.bt
输出应为:
3
返回值
bt ext 命令成功时会在终端输出创建、构建、检查或安装结果;失败时输出中文错误。示例脚本中 calc(1).add(2).value() 返回整数 3。
代码示例
扩展对象可以继续链式调用:
num = calc(10) value = num.add(5).add(2).value() closed = num.close() // 输出:[17,true] print [value, closed]
注意事项
-
bt ext new calc会根据目录名生成扩展名,目录名必须使用小写字母、数字和下划线,并且以小写字母开头。 -
bt ext install calc.bts project会把包复制到project/extensions/calc.bts;同名扩展会被覆盖。 - 项目启动时才会加载
extensions/下的.bts包,开发目录calc/不会被项目自动加载。 - 如果运行用的 BT 构建没有启用
extensionsfeature,存在extensions/目录的项目会报错提示扩展能力不可用。