composer validate 用于检查 composer.json 的格式和配置合理性,确保符合规范。它验证 JSON 语法正确性,如括号匹配、双引号使用、无尾随逗号;检测 name、description、license 等推荐字段是否缺失(严格模式下报错);检查 version 格式、autoload 命名空间路径、scripts 引用有效性;分析 require 和 require-dev 中包名称格式、版本约束合规性及潜在冲突;支持 --strict 模式提升校验强度,适用于 CI/CD,不涉及依赖安装或解析,仅专注配置文件的准确性与安全性。

composer validate 命令主要用于检查当前项目的 composer.json 文件是否符合 Composer 的规范。它能帮助我们及时发现配置问题,避免在安装或更新依赖时出现错误。
校验 composer.json 文件格式
该命令会检查 composer.json 是否为合法的 JSON 格式,包括:- 括号是否匹配、逗号使用是否正确
- 键名和字符串是否用双引号包围
- 是否存在尾随逗号等语法错误
检查字段配置的合理性
除了语法,validate 还会验证常见字段的使用是否符合规范,例如:- name、description、license 等推荐字段是否缺失(会提示但不报错)
- version 字段格式是否合规
- autoload 中的命名空间或路径配置是否有明显错误
- 脚本(scripts)中是否引用了不存在的处理程序
检测依赖配置冲突或异常
命令还会扫描 require 和 require-dev 中的包声明:- 检查包名称格式是否正确(如 vendor/name)
- 版本约束写法是否合理(如 ^1.0 或 dev-master)
- 是否存在明显冲突的依赖版本(部分情况可提示)
- 是否引用了已废弃或不存在的包(需联网时更准确)
运行 composer validate --strict 可启用严格模式,对推荐字段的缺失也会报错,适合在 CI/CD 流程中使用以保证配置完整性。
基本上就这些 —— 它不安装包,也不解析依赖树,但能帮你把 composer.json 写得更规范、更安全。










