发布你的插件

作为 Sponge 的正式插件及 Mod 仓库,Ore 是一个免费的开源项目,任何人都可以在 Ore 上发布自己的 Sponge 插件或者 Forge MOD。

打包你的插件

Ore 要求任何项目的 JAR 压缩包都要封装一个位于根目录的用作描述符的 mcmod.info 文件。此文件用于自动推断一些有关项目的重要细节,使上传过程更容易。如果没有这个文件, Ore 将拒绝您的插件。幸运的是, Sponge API 有一个内置注解处理器,在编译时自动创建这个文件,使用你可能已经在插件的主类中的 @Plugin 注解中提供的描述。

注解

有关创建和编译你的第一个插件的详细信息,请参阅 插件的主类

这里是一个示例 mcmod.info 文件,以供参考︰

[
    {
        "modid": "my-plugin",
        "name": "MyPlugin",
        "version": "1.0.0",
        "description": "My first plugin!",
        "url": "https://spongepowered.org",
        "authorList": [
            "windy",
            "Zidane",
            "gabizou"
        ],
        "requiredMods": [
            "bookotd@1.0.0",
            "ore-test@1.0.0",
            "worldedit@1.0.0"
        ],
        "dependencies": [
            "bookotd@1.0.0",
            "ore-test@1.0.0",
            "worldedit@1.0.0"
        ]
    }
]

最后,每个 Ore 项目 必须modidname 、以及 version 三个字段。

为你的插件签名

出于安全考虑, Ore 要求任何插件文件(ZIP 或 JAR 格式)在上传时须有 良好隐私密码法 (PGP) 产生的签名,此签名须通过与你注册 Sponge 时所用邮箱相关联的公钥的验证。该数字签名将确保文件上传者确为该账户实际持有人。

注解

数字签名可用于证明文件来源,并提供文件的时间戳。如果该文件此后被以任何方式窜改,签名验证将失败。藉由此,数字签名在起到了传统手写签名的作用的同时,还拥有防窜改的特性。例如,GnuPG 发布源即带有数字签名,这样一来用户便可以验证其是否在打包发布后被二次窜改。

为签名你的插件,你必须首先下载可兼容 PGP 的软件,例如 GnuPG (GPG) 。GPG 可在所有主流操作系统上运行,其二进制文件可在 这里 下载。

在安装 GPG 后你需要先生成你的第一个公钥,然后你需要将其添加至你的帐户上。此步骤可在你的个人资料页面中点击你头像旁的钥匙符号完成。

PGP public key 1

在点击后,页面将提示要在文本框中输入公钥。输入不完整的公钥将会导致签名验证失败。

PGP public key 2

最后,你需要用 私钥 来为你构建完成并准备上传的插件签名。你只需要为你上传的文件签名。举个例子,如果你要上传的是一个含有你的插件本体 JAR 文件的 ZIP 压缩包,只有 这个压缩包需要签名。最简单的签名方法是使用下列 GPG 命令。

gpg --output myplugin-1.0.0.jar.sig --detach-sig myplugin-1.0.0.jar

注解

如果你使用诸如 Gradle 或 Maven 这样的构建工具,那么你还可以选择使用各种插件来自动化签署构建的文件这个苦差事。详细信息请参阅 Gradle 文档Maven 文档

上传你的插件

在你的插件 JAR 文件与位于根目录的 mcmod.info 打包在一起,并经过你的 PGP 私钥签名,你的插件就可以上传了!首先要在 Ore 上新建一个项目。自然地,你需要有一个已激活的 Sponge 帐户。若没有,可点击右上角的 “Sign up” (注册)按钮注册一个。若已有 Ore 帐户,点击右上角的 “Log in” (登录)按钮来登录 Ore。

登录后,把鼠标移动到您的头像,在下拉菜单中点击 “New” (新建)选项,或按下C键。

上传时,新建向导会先要求上传主要文件,然后要求上传公钥。

在 Ore 上设置你的项目

在上传完插件后,你便可以按你的想法来对项目进行管理。不要担心,所有设定都可以随时在设置面板中修改。在建立你的项目之后,你可以邀请其他 Sponge 用户成为你项目的成员,即使他们从来没有登录过 Ore 也可以。在项目创建完成后,你邀请的用户将会收到通知,他们可选择接受或拒绝你的邀请。项目成员在接受邀请前对外不可见。

目前你可以将项目成员分成三组:开发者 (Developer) 、编辑者 (Editor) 、以及技术支持 (Support) 。创建项目的用户将自动成为所有者 (Owner) ,其访问该项目时不受任何限制。下面是对各个分组的功能的简介。

所有者

一个项目只可能有一个所有者,目前不可转让,且是唯一一位拥有指派项目中其他成员权限的人。

开发者

开发人员可以创建/编辑释放渠道、 页面和创建编辑版本。

编辑者

编辑者可编辑页面。

技术支持

技术支持无任何实质权限,仅用于标记项目成员。