設定 Gradle

使用 SpongeGradle

使用 SpongeGradle 非常简单,它允许你尽可能减少用于 Sponge 插件上必要的 Gradle 配置。此外,它为 Gradle 提供了对 插件中繼資料 的集成,从而在构建插件时自动添加 Group ID、项目名、版本号等在构建脚本中定义的值,因此你只需要在一个文件里更新你的插件版本。

小訣竅

很多问题的原因都和使用过时的 Gradle 版本有关。我们十分建议开发者使用 SpongeGradle 时搭配最新的 Gradle 版本。你可以查看 相关页面 来了解如何在你的计算机上安装并使用 Gradle。

下面是一个可以用于大部分插件的一个简单模板。 请确保你已经把 Group ID 替换成了对应于你的插件的 Group ID

plugins {
    id 'java-library'
    id("org.spongepowered.plugin") version '0.11.3'
}

// This may not be required, but has solved issues in the past
compileJava.options.encoding = 'UTF-8'

// TODO: Change the following to match your information
group = 'com.example'
version = '1.0.0-SNAPSHOT'
description = 'Here lies an example plugin definition'

repositories {
    mavenCentral()
}

sponge {
    apiVersion("8.1.0")
    licence("MIT")
    loader {
        name(PluginLoaders.JAVA_PLAIN)
        version("1.0")
    }
    plugin("**plugin Id**") {
        displayName("**Plugin Name**")
        entrypoint("**Plugin Entrypoint**")
        description("**Plugin Description**")
        dependency("spongeapi") {
            loadOrder(PluginDependency.LoadOrder.AFTER)
            optional(false)
        }
    }
}

这几行用于处理你通常会手动完成的大部分设置:

  • 基本的 Gradle Java 設定

  • 增加 Sponge 的 Maven 儲存庫(以及 Maven Central)

  • 设置你的项目的插件名称为 plugin ID ,并全部使用小写字母

  • 插件中繼資料 中自动包含项目名称、说明和版本

不使用 SpongeGradle

警告

我们建议使用名为 SpongeGradle 的 Gradle 插件,以在使用 Gradle 的同时,享受 Sponge 插件的相关集成带来的便利。

一般说来,一切必要的编译一个 Sponge 插件的工作都可以通过在你的项目中使用 Gradle 并简单地把 SpongeAPI 添加到依赖(Dependency)中来完成:

repositories {
    mavenCentral()
    maven {
        name = 'sponge-repo'
        url = 'https://repo.spongepowered.org/repository/maven-public/'
    }
}

dependencies {
    compile 'org.spongepowered:spongeapi:8.0.0'
}