diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 1c559a1df..f62949e89 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -27,7 +27,7 @@ jobs: uses: actions/setup-java@v4 with: distribution: 'temurin' - java-version: '21' + java-version: '25' - name: Setup Gradle uses: gradle/actions/setup-gradle@v4 diff --git a/api/build.gradle b/api/build.gradle index a8e7393f7..1aa56c3a0 100644 --- a/api/build.gradle +++ b/api/build.gradle @@ -1,8 +1,9 @@ group = 'net.luckperms' project.version = '5.5' -sourceCompatibility = 1.8 -targetCompatibility = 1.8 +tasks.withType(JavaCompile).configureEach { + options.release = 8 +} jar { manifest { diff --git a/build.gradle b/build.gradle index f9e3bbc07..89b8f5e15 100644 --- a/build.gradle +++ b/build.gradle @@ -6,21 +6,17 @@ plugins { import org.gradle.api.tasks.testing.logging.TestExceptionFormat import org.gradle.api.tasks.testing.logging.TestLogEvent -defaultTasks 'licenseFormat', 'build' - subprojects { apply plugin: 'java' apply plugin: 'maven-publish' - apply plugin: 'org.cadixdev.licenser' + apply plugin: 'dev.yumi.gradle.licenser' group = 'me.lucko.luckperms' version = '5.5-SNAPSHOT' - sourceCompatibility = 11 - targetCompatibility = 11 - tasks.withType(JavaCompile).configureEach { options.encoding = 'UTF-8' + options.release = 11 } tasks.withType(Test).configureEach { @@ -38,18 +34,11 @@ subprojects { } def determinePatchVersion = { - // get the name of the last tag - def tagInfo = new ByteArrayOutputStream() - exec { + def tagInfo = providers.exec { commandLine 'git', 'describe', '--tags' - standardOutput = tagInfo - } - tagInfo = tagInfo.toString() + }.standardOutput.asText.get().trim() - if (!tagInfo.contains('-')) { - return 0 - } - return tagInfo.split("-")[1] + return tagInfo.contains('-') ? tagInfo.split('-')[1] : 0 } project.ext.majorVersion = '5' @@ -59,9 +48,8 @@ subprojects { project.ext.fullVersion = project.ext.apiVersion + '.' + project.ext.patchVersion license { - header = rootProject.file('HEADER.txt') - include '**/*.java' - newLine = true + rule(rootProject.file("HEADER.txt")) + exclude '*.xml' } repositories { diff --git a/common/build.gradle b/common/build.gradle index 97541c2aa..ab2cc373f 100644 --- a/common/build.gradle +++ b/common/build.gradle @@ -1,6 +1,7 @@ plugins { id("java-library") id("jacoco") + alias(libs.plugins.blossom) } test { @@ -15,6 +16,16 @@ jacocoTestReport { dependsOn test } +sourceSets { + main { + blossom { + javaSources { + property 'version', project.ext.fullVersion + } + } + } +} + dependencies { testImplementation 'org.slf4j:slf4j-simple:1.7.36' diff --git a/common/minecraft/build.gradle b/common/minecraft/build.gradle index 4574776d0..0fc119abd 100644 --- a/common/minecraft/build.gradle +++ b/common/minecraft/build.gradle @@ -2,8 +2,9 @@ plugins { alias(libs.plugins.loom) } -sourceCompatibility = 21 -targetCompatibility = 21 +tasks.withType(JavaCompile).configureEach { + options.release = 21 +} repositories { maven { url 'https://maven.fabricmc.net/' } diff --git a/common/src/main/java-templates/me/lucko/luckperms/common/util/BuildInfo.java.peb b/common/src/main/java-templates/me/lucko/luckperms/common/util/BuildInfo.java.peb new file mode 100644 index 000000000..1d9b0c9cc --- /dev/null +++ b/common/src/main/java-templates/me/lucko/luckperms/common/util/BuildInfo.java.peb @@ -0,0 +1,33 @@ +/* + * This file is part of LuckPerms, licensed under the MIT License. + * + * Copyright (c) lucko (Luck) + * Copyright (c) contributors + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +package me.lucko.luckperms.common.util; + +public final class BuildInfo { + private BuildInfo() {} + + public static final String VERSION = "{{ version }}"; + +} diff --git a/common/src/main/java/me/lucko/luckperms/common/storage/implementation/file/FileActionLogger.java b/common/src/main/java/me/lucko/luckperms/common/storage/implementation/file/FileActionLogger.java index e657e7bbc..35ac6c5f3 100644 --- a/common/src/main/java/me/lucko/luckperms/common/storage/implementation/file/FileActionLogger.java +++ b/common/src/main/java/me/lucko/luckperms/common/storage/implementation/file/FileActionLogger.java @@ -46,6 +46,7 @@ import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.StandardOpenOption; import java.util.ArrayList; +import java.util.Collections; import java.util.Comparator; import java.util.List; import java.util.Queue; @@ -168,8 +169,8 @@ public class FileActionLogger { public LogPage getLogPage(FilterList filters, @Nullable PageParameters page) throws IOException { List filtered = loadLog(filters) .sorted(Comparator.comparing(LoggedAction::getTimestamp)) - .collect(Collectors.toList()) - .reversed(); + .collect(Collectors.toList()); + Collections.reverse(filtered); int size = filtered.size(); List paginated = page != null ? page.paginate(filtered) : filtered; diff --git a/fabric/build.gradle b/fabric/build.gradle index 5df15d843..4de90508b 100644 --- a/fabric/build.gradle +++ b/fabric/build.gradle @@ -5,9 +5,13 @@ plugins { alias(libs.plugins.loom) } -archivesBaseName = 'luckperms' -sourceCompatibility = 21 -targetCompatibility = 21 +base { + archivesName = 'luckperms' +} + +tasks.withType(JavaCompile).configureEach { + options.release = 21 +} repositories { maven { url 'https://maven.fabricmc.net/' } @@ -17,7 +21,7 @@ dependencies { // https://modmuss50.me/fabric.html minecraft 'com.mojang:minecraft:1.21.11' mappings loom.officialMojangMappings() - modImplementation 'net.fabricmc:fabric-loader:0.18.2' + modImplementation 'net.fabricmc:fabric-loader:0.18.4' Set apiModules = [ 'fabric-api-base', @@ -76,7 +80,7 @@ shadowJar { relocate 'org.yaml.snakeyaml', 'me.lucko.luckperms.lib.yaml' } -task remappedShadowJar(type: RemapJarTask) { +tasks.register('remappedShadowJar', RemapJarTask) { dependsOn tasks.shadowJar input = tasks.shadowJar.archiveFile addNestedDependencies = true diff --git a/forge/build.gradle b/forge/build.gradle index 3a2f6a8a4..9d5608d05 100644 --- a/forge/build.gradle +++ b/forge/build.gradle @@ -1,24 +1,25 @@ plugins { - alias(libs.plugins.blossom) alias(libs.plugins.shadow) alias(libs.plugins.forgegradle) } -sourceCompatibility = 21 -targetCompatibility = 21 - -blossom { - replaceTokenIn 'src/main/java/me/lucko/luckperms/forge/LPForgeBootstrap.java' - replaceToken '@version@', project.ext.fullVersion +tasks.withType(JavaCompile).configureEach { + options.release = 21 } minecraft { mappings channel: 'official', version: minecraftVersion } +repositories { + minecraft.mavenizer(it) + maven fg.forgeMaven + maven fg.minecraftLibsMaven +} + dependencies { - minecraft "net.minecraftforge:forge:${minecraftVersion}-${forgeVersion}" - annotationProcessor 'net.minecraftforge:eventbus-validator:7.0-beta.12' + implementation minecraft.dependency("net.minecraftforge:forge:${minecraftVersion}-${forgeVersion}") + annotationProcessor 'net.minecraftforge:eventbus-validator:7.0.1' implementation project(':common') implementation project(':common:minecraft') compileOnly project(':common:loader-utils') diff --git a/forge/gradle.properties b/forge/gradle.properties index 40d2b849c..4b2b6da1a 100644 --- a/forge/gradle.properties +++ b/forge/gradle.properties @@ -1,2 +1,2 @@ minecraftVersion=1.21.11 -forgeVersion=61.0.0 \ No newline at end of file +forgeVersion=61.1.3 \ No newline at end of file diff --git a/forge/loader/build.gradle b/forge/loader/build.gradle index 8ecd38e59..bc41e996d 100644 --- a/forge/loader/build.gradle +++ b/forge/loader/build.gradle @@ -4,15 +4,22 @@ plugins { id("java-library") } -sourceCompatibility = 21 -targetCompatibility = 21 +tasks.withType(JavaCompile).configureEach { + options.release = 21 +} minecraft { mappings channel: 'official', version: minecraftVersion } +repositories { + minecraft.mavenizer(it) + maven fg.forgeMaven + maven fg.minecraftLibsMaven +} + dependencies { - minecraft "net.minecraftforge:forge:${minecraftVersion}-${forgeVersion}" + implementation minecraft.dependency("net.minecraftforge:forge:${minecraftVersion}-${forgeVersion}") implementation project(':api') implementation project(':common:loader-utils') } diff --git a/forge/src/main/java/me/lucko/luckperms/forge/LPForgeBootstrap.java b/forge/src/main/java/me/lucko/luckperms/forge/LPForgeBootstrap.java index 29b8a0d31..180638e5f 100644 --- a/forge/src/main/java/me/lucko/luckperms/forge/LPForgeBootstrap.java +++ b/forge/src/main/java/me/lucko/luckperms/forge/LPForgeBootstrap.java @@ -35,6 +35,7 @@ import me.lucko.luckperms.common.plugin.classpath.JarInJarClassPathAppender; import me.lucko.luckperms.common.plugin.logging.Log4jPluginLogger; import me.lucko.luckperms.common.plugin.logging.PluginLogger; import me.lucko.luckperms.common.plugin.scheduler.SchedulerAdapter; +import me.lucko.luckperms.common.util.BuildInfo; import net.luckperms.api.platform.Platform; import net.minecraft.server.MinecraftServer; import net.minecraftforge.event.server.ServerAboutToStartEvent; @@ -204,7 +205,7 @@ public final class LPForgeBootstrap extends MinecraftLuckPermsBootstrap implemen @Override public String getVersion() { - return "@version@"; + return BuildInfo.VERSION; } @Override diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index c37448d51..571f838fe 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -1,15 +1,15 @@ [versions] shadow = "8.3.8" -blossom = "1.3.1" -moddevgradle = "2.0.110" -forgegradle = "[6.0.36,6.2)" -loom = "1.13-SNAPSHOT" -licenser = "0.6.1" +blossom = "2.2.0" +moddevgradle = "2.0.140" +forgegradle = "[7.0.13,8.0)" +loom = "1.15-SNAPSHOT" +licenser = "2.2.2" [plugins] blossom = { id = "net.kyori.blossom", version.ref = "blossom" } shadow = { id = "com.gradleup.shadow", version.ref = "shadow" } moddevgradle = { id = "net.neoforged.moddev", version.ref = "moddevgradle" } forgegradle = { id = "net.minecraftforge.gradle", version.ref = "forgegradle" } -loom = { id = "fabric-loom", version.ref = "loom" } -licenser = { id = "org.cadixdev.licenser", version.ref = "licenser" } \ No newline at end of file +loom = { id = "net.fabricmc.fabric-loom-remap", version.ref = "loom" } +licenser = { id = "dev.yumi.gradle.licenser", version.ref = "licenser" } \ No newline at end of file diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar index 1b33c55ba..d997cfc60 100644 Binary files a/gradle/wrapper/gradle-wrapper.jar and b/gradle/wrapper/gradle-wrapper.jar differ diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index d4081da47..c61a118f7 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-8.14.3-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-9.4.1-bin.zip networkTimeout=10000 validateDistributionUrl=true zipStoreBase=GRADLE_USER_HOME diff --git a/gradlew b/gradlew index 23d15a936..739907dfd 100755 --- a/gradlew +++ b/gradlew @@ -1,7 +1,7 @@ #!/bin/sh # -# Copyright © 2015-2021 the original authors. +# Copyright © 2015 the original authors. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -57,7 +57,7 @@ # Darwin, MinGW, and NonStop. # # (3) This script is generated from the Groovy template -# https://github.com/gradle/gradle/blob/HEAD/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt +# https://github.com/gradle/gradle/blob/2d6327017519d23b96af35865dc997fcb544fb40/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt # within the Gradle project. # # You can find Gradle at https://github.com/gradle/gradle/. @@ -114,7 +114,6 @@ case "$( uname )" in #( NONSTOP* ) nonstop=true ;; esac -CLASSPATH="\\\"\\\"" # Determine the Java command to use to start the JVM. @@ -172,7 +171,6 @@ fi # For Cygwin or MSYS, switch paths to Windows format before running java if "$cygwin" || "$msys" ; then APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) - CLASSPATH=$( cygpath --path --mixed "$CLASSPATH" ) JAVACMD=$( cygpath --unix "$JAVACMD" ) @@ -212,7 +210,6 @@ DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' set -- \ "-Dorg.gradle.appname=$APP_BASE_NAME" \ - -classpath "$CLASSPATH" \ -jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \ "$@" diff --git a/gradlew.bat b/gradlew.bat index db3a6ac20..c4bdd3ab8 100644 --- a/gradlew.bat +++ b/gradlew.bat @@ -70,11 +70,10 @@ goto fail :execute @rem Setup the command line -set CLASSPATH= @rem Execute Gradle -"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* :end @rem End local scope for the variables with windows NT shell diff --git a/hytale/build.gradle b/hytale/build.gradle index dcfbd6101..52d879bb9 100644 --- a/hytale/build.gradle +++ b/hytale/build.gradle @@ -2,8 +2,9 @@ plugins { alias(libs.plugins.shadow) } -sourceCompatibility = 21 -targetCompatibility = 21 +tasks.withType(JavaCompile).configureEach { + options.release = 21 +} dependencies { implementation project(':common') diff --git a/hytale/gradle.properties b/hytale/gradle.properties new file mode 100644 index 000000000..e69de29bb diff --git a/neoforge/build.gradle b/neoforge/build.gradle index b8788142c..136059993 100644 --- a/neoforge/build.gradle +++ b/neoforge/build.gradle @@ -1,37 +1,31 @@ plugins { - alias(libs.plugins.blossom) alias(libs.plugins.shadow) alias(libs.plugins.moddevgradle) } -sourceCompatibility = 21 -targetCompatibility = 21 - -Configuration shade = configurations.create('shade') -configurations.implementation { - extendsFrom configurations.shade +tasks.withType(JavaCompile).configureEach { + options.release = 21 } -blossom { - replaceTokenIn 'src/main/java/me/lucko/luckperms/neoforge/LPNeoForgeBootstrap.java' - replaceToken '@version@', project.ext.fullVersion +configurations { + shade + implementation.extendsFrom shade } neoForge { version = project.neoForgeVersion - validateAccessTransformers = true } dependencies { - add('shade', project(':common')) - add('shade', project(':common:minecraft')) + shade project(':common') + shade project(':common:minecraft') compileOnly project(':common:loader-utils') } shadowJar { archiveFileName = "luckperms-neoforge.jarinjar" - configurations = [shade] + configurations = [project.configurations.shade] dependencies { include(dependency('me.lucko.luckperms:.*')) diff --git a/neoforge/loader/build.gradle b/neoforge/loader/build.gradle index 91ed452a6..7d908b22f 100644 --- a/neoforge/loader/build.gradle +++ b/neoforge/loader/build.gradle @@ -9,22 +9,20 @@ plugins { id("java-library") } -sourceCompatibility = 21 -targetCompatibility = 21 +tasks.withType(JavaCompile).configureEach { + options.release = 21 +} neoForge { version = project.neoForgeVersion - validateAccessTransformers = true runs { client { client() - //mods.set(new HashSet()) // Work around classpath issues by using the production jar for dev runs } server { server() - //mods.set(new HashSet()) // Work around classpath issues by using the production jar for dev runs } } } @@ -39,14 +37,14 @@ tasks.withType(RunGameTask).configureEach { } } -Configuration shade = configurations.create('shade') -configurations.implementation { - extendsFrom configurations.shade +configurations { + shade + implementation.extendsFrom shade } dependencies { - add('shade', project(':api')) - add('shade', project(':common:loader-utils')) + shade project(':api') + shade project(':common:loader-utils') } build { @@ -75,7 +73,7 @@ processResources { shadowJar { archiveFileName = "LuckPerms-NeoForge-${project.ext.fullVersion}.jar" - configurations = [shade] + configurations = [project.configurations.shade] from { project(':neoforge').tasks.shadowJar.archiveFile diff --git a/neoforge/src/main/java/me/lucko/luckperms/neoforge/LPNeoForgeBootstrap.java b/neoforge/src/main/java/me/lucko/luckperms/neoforge/LPNeoForgeBootstrap.java index 30755f224..9b9ccf58f 100644 --- a/neoforge/src/main/java/me/lucko/luckperms/neoforge/LPNeoForgeBootstrap.java +++ b/neoforge/src/main/java/me/lucko/luckperms/neoforge/LPNeoForgeBootstrap.java @@ -35,6 +35,7 @@ import me.lucko.luckperms.common.plugin.classpath.JarInJarClassPathAppender; import me.lucko.luckperms.common.plugin.logging.Log4jPluginLogger; import me.lucko.luckperms.common.plugin.logging.PluginLogger; import me.lucko.luckperms.common.plugin.scheduler.SchedulerAdapter; +import me.lucko.luckperms.common.util.BuildInfo; import me.lucko.luckperms.neoforge.util.NeoForgeEventBusFacade; import net.luckperms.api.platform.Platform; import net.minecraft.server.MinecraftServer; @@ -191,7 +192,7 @@ public final class LPNeoForgeBootstrap extends MinecraftLuckPermsBootstrap imple @Override public String getVersion() { - return "@version@"; + return BuildInfo.VERSION; } @Override diff --git a/sponge/build.gradle b/sponge/build.gradle index 89cdbfdf0..8d7b2556d 100644 --- a/sponge/build.gradle +++ b/sponge/build.gradle @@ -2,8 +2,9 @@ plugins { alias(libs.plugins.shadow) } -sourceCompatibility = 21 -targetCompatibility = 21 +tasks.withType(JavaCompile).configureEach { + options.release = 21 +} repositories { maven { url 'https://repo.spongepowered.org/repository/maven-public/' } diff --git a/sponge/loader/build.gradle b/sponge/loader/build.gradle index f35bb0072..796861070 100644 --- a/sponge/loader/build.gradle +++ b/sponge/loader/build.gradle @@ -2,8 +2,9 @@ plugins { alias(libs.plugins.shadow) } -sourceCompatibility = 21 -targetCompatibility = 21 +tasks.withType(JavaCompile).configureEach { + options.release = 21 +} repositories { maven { url 'https://repo.spongepowered.org/repository/maven-public/' } diff --git a/sponge/sponge-service-proxy/build.gradle b/sponge/sponge-service-proxy/build.gradle index 9c0f51013..b9a27a5a1 100644 --- a/sponge/sponge-service-proxy/build.gradle +++ b/sponge/sponge-service-proxy/build.gradle @@ -2,8 +2,9 @@ repositories { maven { url 'https://repo.spongepowered.org/repository/maven-public/' } } -sourceCompatibility = 21 -targetCompatibility = 21 +tasks.withType(JavaCompile).configureEach { + options.release = 21 +} dependencies { implementation project(':common') diff --git a/sponge/sponge-service/build.gradle b/sponge/sponge-service/build.gradle index b881de105..dd585205e 100644 --- a/sponge/sponge-service/build.gradle +++ b/sponge/sponge-service/build.gradle @@ -2,8 +2,9 @@ repositories { maven { url 'https://repo.spongepowered.org/repository/maven-public/' } } -sourceCompatibility = 21 -targetCompatibility = 21 +tasks.withType(JavaCompile).configureEach { + options.release = 21 +} dependencies { implementation project(':common') diff --git a/standalone/app/build.gradle b/standalone/app/build.gradle index c06d2d971..e4cc4c59f 100644 --- a/standalone/app/build.gradle +++ b/standalone/app/build.gradle @@ -1,10 +1,10 @@ plugins { - alias(libs.plugins.blossom) id("java-library") } -sourceCompatibility = 17 -targetCompatibility = 17 +tasks.withType(JavaCompile).configureEach { + options.release = 17 +} dependencies { implementation project(':api') @@ -49,8 +49,3 @@ dependencies { exclude(module: 'annotations') } } - -blossom { - replaceTokenIn('src/main/java/me/lucko/luckperms/standalone/app/LuckPermsApplication.java') - replaceToken '@version@', project.ext.fullVersion -} \ No newline at end of file diff --git a/standalone/app/src/main/java/me/lucko/luckperms/standalone/app/LuckPermsApplication.java b/standalone/app/src/main/java/me/lucko/luckperms/standalone/app/LuckPermsApplication.java index e1ea21850..be1f9b078 100644 --- a/standalone/app/src/main/java/me/lucko/luckperms/standalone/app/LuckPermsApplication.java +++ b/standalone/app/src/main/java/me/lucko/luckperms/standalone/app/LuckPermsApplication.java @@ -128,8 +128,4 @@ public class LuckPermsApplication implements AutoCloseable { return this.commandExecutor; } - public String getVersion() { - return "@version@"; - } - } diff --git a/standalone/build.gradle b/standalone/build.gradle index ed71fe2a9..e690be90c 100644 --- a/standalone/build.gradle +++ b/standalone/build.gradle @@ -4,8 +4,9 @@ plugins { id("jacoco-report-aggregation") } -sourceCompatibility = 17 -targetCompatibility = 17 +tasks.withType(JavaCompile).configureEach { + options.release = 17 +} test { useJUnitPlatform { diff --git a/standalone/loader/build.gradle b/standalone/loader/build.gradle index 729ef4c31..5b549e794 100644 --- a/standalone/loader/build.gradle +++ b/standalone/loader/build.gradle @@ -11,8 +11,9 @@ dependencies { implementation project(':standalone:app') } -sourceCompatibility = 17 -targetCompatibility = 17 +tasks.withType(JavaCompile).configureEach { + options.release = 17 +} application { mainClass = 'me.lucko.luckperms.standalone.loader.StandaloneLoader' diff --git a/standalone/src/main/java/me/lucko/luckperms/standalone/LPStandaloneBootstrap.java b/standalone/src/main/java/me/lucko/luckperms/standalone/LPStandaloneBootstrap.java index af78fa012..035de0324 100644 --- a/standalone/src/main/java/me/lucko/luckperms/standalone/LPStandaloneBootstrap.java +++ b/standalone/src/main/java/me/lucko/luckperms/standalone/LPStandaloneBootstrap.java @@ -32,6 +32,7 @@ import me.lucko.luckperms.common.plugin.classpath.ClassPathAppender; import me.lucko.luckperms.common.plugin.classpath.JarInJarClassPathAppender; import me.lucko.luckperms.common.plugin.logging.Log4jPluginLogger; import me.lucko.luckperms.common.plugin.logging.PluginLogger; +import me.lucko.luckperms.common.util.BuildInfo; import me.lucko.luckperms.standalone.app.LuckPermsApplication; import net.luckperms.api.platform.Platform; @@ -145,7 +146,7 @@ public class LPStandaloneBootstrap implements LuckPermsBootstrap, LoaderBootstra @Override public String getVersion() { - return this.loader.getVersion(); + return BuildInfo.VERSION; } @Override diff --git a/velocity/build.gradle b/velocity/build.gradle index fb35079cd..370f115ef 100644 --- a/velocity/build.gradle +++ b/velocity/build.gradle @@ -1,5 +1,4 @@ plugins { - alias(libs.plugins.blossom) alias(libs.plugins.shadow) } @@ -14,11 +13,6 @@ dependencies { annotationProcessor 'com.velocitypowered:velocity-api:3.1.1' } -blossom { - replaceTokenIn('src/main/java/me/lucko/luckperms/velocity/LPVelocityBootstrap.java') - replaceToken '@version@', project.ext.fullVersion -} - shadowJar { archiveFileName = "LuckPerms-Velocity-${project.ext.fullVersion}.jar" diff --git a/velocity/src/main/java/me/lucko/luckperms/velocity/LPVelocityBootstrap.java b/velocity/src/main/java/me/lucko/luckperms/velocity/LPVelocityBootstrap.java index d548153e0..b3cf61672 100644 --- a/velocity/src/main/java/me/lucko/luckperms/velocity/LPVelocityBootstrap.java +++ b/velocity/src/main/java/me/lucko/luckperms/velocity/LPVelocityBootstrap.java @@ -39,6 +39,7 @@ import me.lucko.luckperms.common.plugin.classpath.ClassPathAppender; import me.lucko.luckperms.common.plugin.logging.PluginLogger; import me.lucko.luckperms.common.plugin.logging.Slf4jPluginLogger; import me.lucko.luckperms.common.plugin.scheduler.SchedulerAdapter; +import me.lucko.luckperms.common.util.BuildInfo; import net.luckperms.api.platform.Platform; import org.slf4j.Logger; @@ -57,7 +58,7 @@ import java.util.concurrent.CountDownLatch; @Plugin( id = "luckperms", name = "LuckPerms", - version = "@version@", + version = BuildInfo.VERSION, authors = "Luck", description = "A permissions plugin", url = "https://luckperms.net" @@ -168,7 +169,7 @@ public class LPVelocityBootstrap implements LuckPermsBootstrap { @Override public String getVersion() { - return "@version@"; + return BuildInfo.VERSION; } @Override