读懂文件名

备注

我们在 2018 年 10 月更新了版本策略。下列信息从 SpnogeAPI 7.1 开始有效。在这之前的版本的版本策略可在这里找到:“旧版 SpongeForge 版本策略”。

你在下载文件时,文件名可以告诉你一些重要信息。下文将解释这些信息。

SpongeForge

你下载到的 SpongeForge 的文件名有如下格式:

spongeforge-<MCVersion>-<ForgeBuild>-<APIMajor>.<LatestAPIMinorRelease>.<RecommendedVersion(-RC<BuildNumber>)>.jar

MCVersion

Minecraft 版本。只有兼容此版本的 Minecraft 客户端才能连接。

ForgeBuild

这个 SpongeForge 构建所基于的 Forge 版本,保证兼容性。

APIMajor

该文件所实现的 SpongeAPI 的主版本(即 SemVer 中的 X 部分)。

LatestAPI MinorRelease

该文件所实现的 SpongeAPI 的次要版本(即 SemVer 中的 Y 部分)。

Recommended Version

若其后面没有 -RC<BuildNumber>,则代表该实现的修订版本(即 SemVer 中的 Z 部分)。

-RC <BuildNumber>

下一个推荐版本的测试构建编号。出现构建编号说明 RecommenedVersion 版本还没有正式发布。

文件名中的 Forge 版本表明了此版 SpongeForge 开发与测试过程中使用的 Forge 版本,同时也说明此版 SpongeForge 保证与此版 Forge 能协同工作,不会出现问题。通常,我们倾向于使用最新的推荐版本的 Forge。

备注

正常的 Forge mod 通常可以运行在任何指定构建的 Forge 版本(例如 1.12.2)并且没有任何问题。但是,SpongeForge 需要访问其他东西——Forge 的底层——其中大部分的 mod 都触及不到,也就是只有 Sponge 在修改它。由于 Forge 可以随时更改内部代码,所以其正常的向后兼容的保证并不适用于 SpongeForge。用户自然可以选择使用更高版本的 Forge,但是我们并不能保证这样做不会遇到问题。

警告

调查崩溃问题时,自然也可以选用更新版本的 Forge。尽管如此,我们依旧建议使用对应版本的 Forge 进行对照实验,以确定问题并非由使用新版 Forge 导致。尽管我们无法保证兼容性,但还是请在确认新版 Forge 会引发问题时向我们反馈,这样我们就可以更新 SpongeForge,使相同的问题不会出现在下一个版本里。

示例

SpongeForge 的 Jar 文件的名字始终遵循此结构,这样做有助于判断兼容性。

例如,文件名 spongeforge-1.12.2-2768-7.1.4.jar 代表此版 SpongeForge 适用于 Minecraft 1.12.2,基于 14.23.5.2768 版本的 Forge(Forge 构建 2768)且只保证与这个版本的 Forge 兼容,同时其保证兼容 SpongeAPI 7.1.0,此外还是推荐版本,是兼容此版 SpongeAPI 的第四版 SpongeForge。

另一个例子:spongeforge-1.12.2-2768-7.1.5-RC3505.jar。这代表这个版本的 SpongeForge 兼容 Minecraft 1.12.2,构建时使用 Forge 14.23.5.2768``(Forge 构建 ``2768),保证与 SpongeAPI 7.1.0 的兼容,但不是推荐版本,其对应的开发构建编号为 3505,且代表未来第五个(即 7.1.5 中的 5)推荐版本。

SpongeVanilla

SpongeVanilla 的文件名信息与 SpongeForge 基本一致,除了 SpongeVanilla(理所当然地)不包括 Forge 构建号。换言之,上面 SpongeForge 的那个例子换到 SpongeVanilla 上长这样:

spongevanilla-1.12.2-7.1.4.jarspongevanilla-1.12.2-7.1.5-RC148.jar

SpongeAPI

SpongeAPI 的文件名格式如下:

spongeapi-<APIMajor>.<LatestAPIMinorRelease>.0-shaded.jar

spongeapi-<APIMajor>.<LatestAPIMinorRelease>.0-<Date>.<Time>-<BuildNumber>-shaded.jar

spongeapi-<APIMajor>.<LatestAPIMinorRelease>.0-SNAPSHOT.jar

APIMajor

该文件所实现的 SpongeAPI 的主版本(即 SemVer 中的 X 部分)。

LatestAPI MinorRelease

该文件所实现的 SpongeAPI 的次要版本(即 SemVer 中的 Y 部分)。

Date

是次构建开始的日期。

Time

是次构建开始的时间。

<BuildNumber>

该版本 Sponge 的构建号。反馈 bug 或者寻求技术支持时请务必提供这个信息。

备注

第一种不含构建信息的格式代表正式发布推荐版本(比如 spongeapi-7.1.0-shaded.jar)。

第二种含有构建信息的格式代表最近的测试版本(如果该文件是通过浏览器下载下来的话)。这代表该版本的 SpongeAPI 还在开发中(比如 spongeapi-7.2.0-20190224.183500-15-shaded.jar)。

第二种含有构建信息的格式代表最近的测试版本(如果该文件是通过 Gradle 或 Maven 等工具获取的)。这代表该版本的 SpongeAPI 还在开发中(比如 spongeapi-7.2.0-SNAPSHOT.jar)。

关于 -shaded 标签的解释可参考我们关于构建系统的说明。