核心概念
部署流水线
当你点击"部署"时发生了什么——Polymerium 如何将你的模组列表变成可运行的游戏。
Last updated on
部署做什么
部署会把实例元数据——Minecraft 版本、模组加载器和包列表——转换为可运行的运行目录(build/)。可以把它理解成根据配方准备游戏:元数据是配方,部署后的运行目录才是 Minecraft 实际打开的位置。
如果你不熟悉整合包源、本地保留、运行目录和工作副本这些概念,可以先看术语表 →。
会下载什么
在第一次部署时,Polymerium 会下载运行游戏所需的一切:
- Minecraft 本身 —— 来自 Mojang 服务器的版本 JAR 和资源
- 加载器库 —— Fabric、Forge、NeoForge 或 Quilt 等模组加载器所需的文件
- 包 —— 从 CurseForge 和 Modrinth 解析的模组和其他包类型,包括任何依赖项
所有这些都存储在你磁盘上的一个共享缓存中。一旦下载,它们就不会再被下载——任何实例都可以重用它们。
符号链接,而不是副本
Polymerium 不会将模组文件复制到每个实例中,而是从共享缓存创建符号链接到你的 build/ 目录。如果你有五个实例都使用 Sodium,你的磁盘上只有一份 Sodium 副本——每个实例只是链接到它。
来自整合包源(import/)与本地保留(persist/)目录的文件也会按优先级分层到运行目录(build/)中。参见目录模型 → 了解其工作原理。
快速部署
新实例的第一次部署会下载所有内容,所以需要一点时间——就像任何启动器一样。在那之后,事情会变得很快:
- 什么都没变? 完全跳过部署。你的最后一次构建仍然有效。
- 只有几个模组改变了? 只有那些模组会被更新。其他一切都保持原位。
这就是为什么启动一个你已经部署过的实例感觉是即时的。
缓存的好处
共享缓存意味着你的其他实例也会受益。如果实例 A 已经下载了一个模组,而你向实例 B 添加了相同的模组,就不需要下载任何东西——部署只是创建一个新的符号链接。
了解更多
- 元数据驱动的实例 → —— 为什么实例是描述而不是文件夹副本
- 目录模型 → —— 文件如何分层到游戏目录中