Configurer Gradle

Utiliser SpongeGradle

Utiliser SpongeGradle est très simple et vous permet de réduire au minimum la configuration Gradle nécessaire pour mettre en place un plugin Sponge sur Gradle. Additionnellement, il fournit une intégration pour Plugin Metadata, comme la contribution automatique du groupe, du nom du projet, de la version et de la description définies dans votre script de build pour le plugin compilé, donc vous devez seulement mettre à jour la version de votre plugin dans un fichier.

Astuce

La plupart des problèmes sont causés par la tentative de l’utilisation d’une version obsolète de Gradle. Nous recommandons d’utiliser la dernière version de Gradle avec SpongeGradle. La section Gradle de la page du système de build explique comment configurer Gradle sur votre ordinateur.

Voici ci-dessous un modyle simple qui devrait être utilisable pour la plupart des plugins. Assurez-vous de remplacer le groupe par le group ID que vous avez choisi avant.

plugins {
    id 'java'
    id 'org.spongepowered.plugin' version '0.9.0'
}

// 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 {
    jcenter()
}

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

Ces quelques lignes traitent la plupart des paramètres que vous feriez normalement manuellement :

  • Configuration Java de Gradle Basique

  • Configuration de votre projet pour compiler avec Java 8

  • Ajout du dépôt Maven de Sponge (et le Maven Central)

  • Mise en place d’un plugin avec le nom du projet en minuscule comme le plugin ID

  • Intégration automatique du nom du projet, de la description et de la version dans Plugin Metadata.

Régler manuellement l’ID du plugin

Par défaut, le plugin Gradle va configurer votre plugin ID avec le nom du projet (en minuscules) que vous avez configuré. Si vous vous voulez utiliser un plugin ID personnalisé et toujours utiliser l’intégration Plugin Metadata, vous pouvez le modifier manuellement :

sponge {
    plugin {
        id = 'pluginidgoeshere'
    }
}

Remplacer les paramètres par défaut

Par défaut le plugin Gradle contribuera le nom du plugin, la version du plugin, et la description automatiquement au Plugin Metadata avec les valeurs par défaut définies dans les propriétés du projet. Il est aussi possible de remplacer ces valeurs si vous voulez les spécifier manuellement :

sponge {
    plugin {
        meta {
            name = 'Example Plugin'
            version = '1.0.0-SNAPSHOT'
            description = 'This is an example plugin'
            url = 'http://www.example.com/'
        }
    }
}

Vous pouvez aussi supprimer une valeur par défaut entièrement :

sponge {
    plugin {
        meta {
            name = null
            description = null
        }
    }
}

Sans SpongeGradle

Avertissement

Nous recommandons l’utilisation de SpongeGradle pour les plugins Gradle puisqu’il fournira une intégration Gradle supplémentaire pour les plugins Sponge.

En général, tout le nécessaire pour compiler un plugin Sponge en utilisant Gradle peut être fait en ajouter simplement la dépendance SpongeAPI à votre projet :

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

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