Fabric Minecraft模组开发报错:CommandRegistrationCallback无法解析
解决Fabric模组
CommandRegistrationCallback无法解析问题 核心排查与修复步骤
1. 确认Fabric API依赖配置
- 检查
build.gradle是否正确引入Fabric API依赖,且版本与你的Minecraft、Fabric Loader版本匹配:
dependencies { // 保留其他原有依赖 modImplementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_api_version}" }
- 打开
gradle.properties,确保fabric_api_version是对应MC版本的有效号,比如MC 1.20.1对应0.83.0+1.20.1,版本号可参考Fabric官方兼容列表。
2. 修正导入语句
- 代码里的导入路径必须对应Fabric API的新版本命令API:
import net.fabricmc.fabric.api.command.v2.CommandRegistrationCallback;
注意是v2版本,旧教程可能还在用已废弃的v1,这会直接导致类找不到。
3. 强制刷新依赖并重构
- 执行命令彻底清理缓存并同步依赖:
gradlew clean build --refresh-dependencies
- 同时在IDE里点击「Sync Project with Gradle Files」,确保IDE能识别到最新下载的依赖。
4. 校验版本兼容性
- Minecraft、Fabric Loader、Fabric API三者版本必须严格对应,举个匹配示例:
- MC 1.19.2 → Fabric Loader 0.14.21 → Fabric API 0.68.1+1.19.2
- MC 1.20.1 → Fabric Loader 0.15.11 → Fabric API 0.83.0+1.20.1
5. 检查fabric.mod.json依赖声明
- 确保文件里明确声明对Fabric API的依赖,否则即使编译通过,运行时也会报错:
"depends": { "fabricloader": ">=0.15.0", "fabric-api": "*", "minecraft": "~1.20.1", "java": ">=17" }
兜底方案
如果以上操作都无效,删除项目根目录下的.gradle文件夹,然后重新执行gradlew setupDecompWorkspace(对应IDE的初始化命令),彻底重置gradle环境;同时确认项目源码放在src/main/java、资源文件在src/main/resources,路径不能错。
内容的提问来源于stack exchange,提问作者Gabocota
相关产品推荐
相关产品推荐

