用途:boxlang check 解析 BoxLang 与 CFML 源文件并报告语法错误,不执行代码也不编译为字节码,相当于 bash -n 或 node --check。它使用与运行时相同的 ANTLR 解析器,因此结果与运行时接受范围一致,可作为快速、安全的反馈步骤。
主要能力:支持检查 .bx、.bxs、.bxm、.cfc、.cfm、.cfs 文件;可传入多个文件,或用 --source 指定文件/目录(目录递归扫描);--format 可选 text(默认)或 json;-q/--quiet 抑制成功输出与汇总,失败始终打印。退出码 0 表示全部有效,1 表示存在语法错误或用法错误。
使用方式:先确认已安装 OS 二进制版 BoxLang,运行 boxlang --version 验证。常用命令:boxlang check models/User.bx handlers/Main.bx;boxlang check --source ./src;boxlang check --source ./src --quiet;boxlang check --source ./src --format json。文本输出会给出文件、行、列与错误信息;JSON 输出为每个文件一条记录,含 file、valid、issues(message、line、column)。
适用场景:创建或编辑上述扩展名文件后;运行测试套件前让解析错误快速失败;提交或发起 PR 前;git 钩子与 CI 流水线中;当运行时错误疑似解析错误、需要精确行列时。可与格式化检查配合:boxlang check --source ./src 与 boxlang format --check --source ./src,后者在格式漂移时返回非零,去掉 --check 可应用格式化。
限制:仅验证语法,不捕获运行时错误、缺失变量、错误参数名或逻辑失败,这些需运行测试;不执行也不编译代码,因此对任何文件都安全;通过检查的文件仍可能在运行时失败。
相关:文档 https://boxlang.ortusbooks.com/getting-started/ide-tooling/boxlang-syntax-check;其他 CLI 动作命令见 boxlang-runtime-cli-scripting 技能;语法检查通过后运行 TestBox 测试见 boxlang-testing 技能。