name: plantuml-syntax description: PlantUML 图表语法的权威参考。提供 UML 和非 UML 图表类型、语法模式、示例和设置指南,用于生成准确的 PlantUML 图表。 allowed-tools: Read, Glob, Grep
PlantUML 语法参考
概述
PlantUML 是一个基于 Java 的工具,用于从文本描述创建图表。它支持全面的 UML 图表和许多非 UML 图表类型。
主要优势:
- 最全面的图表支持(15+ 种类型)
- 成熟的 C4 模型集成,带有图标/精灵
- 广泛的定制选项
- 经过实战考验(自 2009 年起)
要求:
- Java 运行环境(JRE)
- GraphViz(用于某些图表类型)
- 或使用 Docker:
docker run -p 8080:8080 plantuml/plantuml-server
图表类型快速参考
UML 图表
| 类型 | 关键词 | 最佳用途 |
|---|---|---|
| 序列图 | @startuml |
交互、API 流、协议 |
| 用例图 | @startuml |
需求、用户故事 |
| 类图 | @startuml |
OOP 设计、领域模型 |
| 活动图 | @startuml |
工作流、流程 |
| 组件图 | @startuml |
系统结构 |
| 部署图 | @startuml |
基础设施、部署 |
| 状态图 | @startuml |
状态机 |
非 UML 图表
| 类型 | 关键词 | 最佳用途 |
|---|---|---|
| JSON | @startjson |
JSON 结构可视化 |
| YAML | @startyaml |
YAML 结构可视化 |
| 线框图 | @startsalt |
UI 原型 |
| 甘特图 | @startgantt |
项目时间线 |
| 思维导图 | @startmindmap |
层次化想法 |
| WBS | @startwbs |
工作分解 |
| ER | @startuml |
数据库模式 |
| C4 | @startuml 带 C4 包含 |
软件架构 |
基本语法
所有 PlantUML 图表都包裹在开始/结束标签中:
@startuml
' 你的图表代码在这里
@enduml
注释:
- 单行:
' 这是一个注释 - 块:
/' 这是一个块注释 '/
标题和标注:
@startuml
title 我的图表标题
caption 这是一个标注
header 页面头部
footer 页面尾部
' 图表内容
@enduml
快速参考卡
序列图
@startuml
participant A
participant B
A -> B: 消息
A <-- B: 响应
@enduml
类图
@startuml
class 名称 {
- 私有
+ 公共
+ 方法()
}
A <|-- B : 继承
A *-- B : 包含
@enduml
活动图
@startuml
开始
:动作;
如果 (条件?) 是 (是)
:真路径;
否则 (否)
:假路径;
结束如果
停止
@enduml
状态图
@startuml
[*] --> 状态1
状态1 --> 状态2 : 事件
状态2 --> [*]
@enduml
组件图
@startuml
[组件1] --> [组件2]
数据库 DB
组件2 --> DB
@enduml
参考
有关详细语法和完整示例,请参见:
| 参考 | 内容 | 何时加载 |
|---|---|---|
| sequence.md | 参与者、箭头、激活、分组、注释 | 创建序列图 |
| class.md | 类、可见性、关系、基数 | 创建类图 |
| activity.md | 条件、泳道、分叉/合并 | 创建活动图 |
| state-component.md | 状态机、组件、部署 | 创建状态/组件图 |
| c4.md | C4 上下文、容器、组件图 | 创建 C4 架构图 |
| special-diagrams.md | ER、JSON、思维导图、甘特图 | 创建非 UML 图表 |
| styling-setup.md | 皮肤参数、主题、安装 | 定制图表、设置 PlantUML |
文件扩展名
| 扩展名 | 描述 |
|---|---|
.puml |
标准 PlantUML 文件 |
.plantuml |
替代扩展名 |
.pu |
短扩展名 |
.iuml |
包含文件 |
测试场景
场景 1:创建序列图
查询: “为身份验证创建 PlantUML 序列图”
预期: 技能激活,提供序列语法,包含参与者、箭头和 alt/else 块
场景 2:创建类图
查询: “为电子商务领域生成 PlantUML 类图”
预期: 技能激活,提供类语法,包含关系和基数
场景 3:创建 C4 图
查询: “在 PlantUML 中创建 C4 容器图”
预期: 技能激活,指向 c4.md 参考以获取包含和语法
最后更新: 2025-12-28 PlantUML 版本: 1.2024.6
版本历史
- v1.1.0 (2025-12-28):重构为渐进式披露 - 将内容提取到 references/
- v1.0.0 (2025-12-26):初始发布