前提
前两篇我们讨论了API 设计的一些基础, 在讨论 MAX/MIN 使用时候涉及到了列表和MAP对象。
Map , 自然我们在proto DSL 早已支持, 但是 IDEA 中还一直不支持 map 的展示, 所以在 0.7.6 我们加上啦!
[0.7.6] - 2025-08-15
Features
- Upgrade default spring dependencies;
- Support protobuf
mapparser and show; - Default protobuf linkage of the apihug extension;
- Bug fix;
map<string, uint64> all_scores = 2 [(hope.swagger.field) = {
description: "all score";
max_length: {
value: 64
}
additionalProperties:{
maximum:{
value: 22222
}
minimum:{
value: 55555
}
}
}];
map<string, JakeRequest> blue_pig = 4 [(hope.swagger.field) = {
description: "blue frogs";
max_length: {
value: 64
}
additionalProperties:{
maximum:{
value: 22222
}
minimum:{
value: 55555
}
}
}];
可视化设计:
可视化设计 MAP 很的很爽哈, 虽然不建议在API 中引入MAP 这样的数据结构
PS 知道为什么吗?
捎带复习下插件 FAQ:
ApiHug API 设计助手的常见问题
ProtoBuf
Proto 文件无法识别
目前 IDE 支持的 Proto buffer 插件主要有两种:
- IDE 自带的,供应商为
JetBrains s.r.o.✅✅✅ - 第三方
HIGAN插件 ❌❌❌
这两个插件存在冲突,只能启用其中一个。⚠️
ApiHug Plugin 依赖于 IDE 自带的 Proto Editor 插件进行 AST 语法树解析,因此必须启用 JetBrains s.r.o. ✅ Proto 插件:
Proto 文件无法导入,无法识别 proto import
ApiHug SDK proto 导入 import "swagger/annotations.proto"; 时报错:
ApiHug SDK proto import import "swagger/annotations.proto"; 失败:
01: 编译项目, compile the project (通过 markdown 或 gradle 任务)
02: 编译完成后,查看 proto 项目的 build 缓存,after compile success, check the project proto build cache:
{PROJECT}/{PROTO-MODULE}/build/extracted-include-protos:
03:如果仍未成功导入,手动配置 proto import;if still not import then please add path manually:
- 打开
Settings面板 - 找到
Protocol Buffers - 取消勾选
Configure Automatically - 将
{PROJECT}/{PROTO-MODULE}/build/extracted-include-protos添加到Import Paths中:
从 Plugin 0.7.6 版本起,插件已内置这些预定义的 proto 文件。
最终所有 import 语句都应变为绿色,Eventually all the import should turn green!
⚠️ 有时官方的 proto editor 可能会崩溃,请留意崩溃提示!
若即使重启 IDEA 问题依旧存在,请向我们报告:report issue
Gradle
无法识别 Gradle 项目
IDE 应弹出 Load Gradle Project 提示,若通知被关闭,请打开 Notification 面板手动触发。
IDE should pop up a notification: Load Gradle Project,if notification pop up was forbidden, then please open the Notification panel to load it manually!
Gradle 编译失败
- report issue
- Homepage 查找二维码加入我们的交流群。
API 设计树未显示/未刷新
- 刷新树
- 重建树(耗时操作),重新编译后再刷新
若错误仍然存在,则 report issue!
检查版本
检查已安装的 ApiHug IDE 插件版本:
顶部菜单:ApiHug -> About: