diff --git a/build.gradle.kts b/build.gradle.kts index 7c3648b7..3f0c3f3d 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -1,9 +1,13 @@ +import de.undercouch.gradle.tasks.download.Download +import de.undercouch.gradle.tasks.download.Verify + plugins { `java-library` `maven-publish` alias(libs.plugins.shadow) alias(libs.plugins.runPaper) alias(libs.plugins.lombok) + alias(libs.plugins.download) } val targetJavaVersion = 17 @@ -31,12 +35,12 @@ dependencies { compileOnly(libs.worldeditCore) compileOnly(libs.placeholderApi) compileOnly(libs.worldguardBukkit) - compileOnly(libs.crackshot) compileOnly(libs.playerSettings) compileOnly(libs.kdStatusReloaded) compileOnly(libs.essentialsx) compileOnly(libs.nameChangeAutomation) compileOnly(libs.luckpermsApi) + compileOnly(fileTree("libs/")) implementation(libs.hikaricp) implementation(libs.mysqlConnectorJ) @@ -60,28 +64,26 @@ java { } } -tasks { - jar { - dependsOn(shadowJar) - } - - compileJava { - options.encoding = "UTF-8" - } +val libsDir = layout.projectDirectory.dir("libs") +val crackShotJar = libsDir.file("Crackshot.jar") - javadoc { - options.encoding = "UTF-8" - } +tasks { + val downloadFile = + register("downloadFile") { + src("https://mediafilez.forgecdn.net/files/3151/915/CrackShot.jar") + dest(crackShotJar) + overwrite(false) + } - shadowJar { - mergeServiceFiles() - enableAutoRelocation = true - relocationPrefix = "net.azisaba.lgw.leongunwar.libs" - } -} + val verifyFile = + register("verifyFile") { + src(crackShotJar) + algorithm("SHA-256") + checksum("8bb80635778a88521ca6d1ab8ce42bfec67174953967abf849dd231be16c7963") + dependsOn(downloadFile) + } -tasks { - build { + jar { dependsOn(shadowJar) } @@ -133,6 +135,8 @@ tasks { if (targetJavaVersion >= 10 || JavaVersion.current().isJava10Compatible) { options.release.set(targetJavaVersion) } + + dependsOn(verifyFile) } javadoc { diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index bf8775bd..a25340b4 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -6,6 +6,7 @@ shadow = "9.1.0" runPaper = "3.0.0" lombok = "8.14.2" +download = "5.6.0" # library paperApi = "1.16.5-R0.1-SNAPSHOT" @@ -31,6 +32,7 @@ junit = "5.13.4" shadow = { id = "com.gradleup.shadow", version.ref = "shadow" } runPaper = { id = "xyz.jpenilla.run-paper", version.ref = "runPaper" } lombok = { id = "io.freefair.lombok", version.ref = "lombok" } +download = { id = "de.undercouch.download", version.ref = "download" } [libraries] # system diff --git a/libs/.gitignore b/libs/.gitignore new file mode 100644 index 00000000..f23b9489 --- /dev/null +++ b/libs/.gitignore @@ -0,0 +1 @@ +*.jar \ No newline at end of file