Skip to content

🗺️ 版本兼容性与跨时代生命周期矩阵

📌 代码仓库源码声明:本 Wiki 中的文档反映了代码仓库当前的最新源码状态,可能包含尚未在 CurseForge 和 Modrinth 上发布的开发中功能或最新提交。


🏛️ 1 Jar 1 Version(单版本单 Jar)执行规范

True Sleep 严格执行 1 Jar 1 Version(单版本单 Jar)政策:每个受支持的 Minecraft 目标版本均拥有独立编译的专属 JAR 文件,原生针对该版本的 Loom 工具链和字节码进行构建。

根据 强制性多版本全生命周期支持规范,未经明确公告,任何已受支持的版本均绝不会被遗弃、终止维护或标记废弃。


📊 完整的 Minecraft 版本支持矩阵

Minecraft 锚点版本时代阶段Java 工具链构建套件模组版本标签运行状态
MC 26.3Modern LeadJava 25+ (release = 25)Loom 1.15+, Gradle 9.3+1.3.23+26.3🟢 活跃支持与生产构建
MC 26.2Modern PredecessorJava 25+ (release = 25)Loom 1.15+, Gradle 9.3+1.3.22+26.2🟢 活跃支持与生产构建
MC 26.1 / 26.1.2Modern AnchorJava 25+ (release = 25)Loom 1.15+, Gradle 9.3+1.3.22+26.1.2🟢 活跃支持与生产构建
MC 1.21.11Winter DropJava 21 (release = 21)Loom 1.15-SNAPSHOT1.1.2+1.21.11🟡 归档维护构建
MC 1.21.1Transitional EarlyJava 21 (release = 21)Loom 1.10+1.1.2+1.21.1🟡 归档维护构建
MC 1.20.1Legacy AnchorJava 17 (release = 17)Loom 1.4+, Gradle 8.x1.0.3+1.20.1🟡 归档维护构建

🛡️ ModVersionGuard 启动安全验证

为保护玩家持久化的存档数据与数据附件免受类加载器不匹配或 API 损坏的影响,True Sleep 在模组初始化 onInitialize() 阶段执行零依赖字节码安全验证:

java
public class TrueSleep implements ModInitializer {
    @Override
    public void onInitialize() {
        net.vanillaoutsider.truesleep.util.ModVersionGuard.checkClass(
            "True Sleep", 
            "net.minecraft.world.entity.player.Player"
        );
        LOGGER.info("Initializing True Sleep (Time Warp)...");
        TrueSleepRules.init();
        CommandRegistrationCallback.EVENT.register((dispatcher, registryAccess, environment) -> 
            TrueSleepCommand.register(dispatcher)
        );
    }
}

Knot 类加载器解析机制

验证过程调用 Thread.currentThread().getContextClassLoader() 通过 Fabric 的 Knot 类加载器解析原版核心类。如果检测到不兼容的游戏引擎环境,模组会在任何区块或实体数据被修改之前立即安全中止启动,并输出明确的诊断报错信息。


📦 模组依赖矩阵

依赖项最低版本必需 / 可选用途与职责
Fabric Loader>=0.16.10必需模组加载与 Mixin 字节码转换引擎。
Java Runtime>=25 (26.x) / >=21 (1.21) / >=17 (1.20)必需核心 JVM 运行环境。
Fabric API* (Open Lower Bound)必需命令注册与生命周期事件钩子。
Dasik Library>=1.8.0必需动态 GameRule 引擎与社交系统调控。
Cloth Config*可选游戏内图形化配置编辑界面。
ModMenu*可选模组列表集成与配置设置入口按钮。

Official documentation & web portal for Dasik Igaijinn mods.