Skip to content

Commit 1651fbb

Browse files
committedMar 7, 2025
chore: Separate plugin from api
1 parent 1a01139 commit 1651fbb

File tree

10 files changed

+84
-68
lines changed

10 files changed

+84
-68
lines changed
 

‎build.gradle.kts

+31-60
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22

33
import xyz.jpenilla.runtask.task.AbstractRun
44
import com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar
5-
import net.minecrell.pluginyml.bukkit.BukkitPluginDescription
65
import xyz.jpenilla.runpaper.task.RunServer
76
import io.papermc.hangarpublishplugin.model.Platforms
87
import org.gradle.internal.extensions.stdlib.toDefaultLowerCase
@@ -11,7 +10,6 @@ import java.io.ByteArrayOutputStream
1110
plugins {
1211
id("java")
1312
id("maven-publish")
14-
alias(libs.plugins.plugin.yml)
1513
alias(libs.plugins.minotaur)
1614
alias(libs.plugins.run.server)
1715
alias(libs.plugins.shadow)
@@ -25,6 +23,7 @@ val version = properties["version"] as String +
2523
if (versionIsBeta)
2624
"-${getGitCommitHash()}"
2725
else ""
26+
val targetJavaVersion = (properties["java-version"] as String).toInt()
2827

2928
if (project.hasProperty("NEXUS_USERNAME") && project.hasProperty("NEXUS_PASSWORD")) {
3029
java {
@@ -87,88 +86,60 @@ if (project.hasProperty("NEXUS_USERNAME") && project.hasProperty("NEXUS_PASSWORD
8786
}
8887

8988
allprojects {
89+
apply(plugin = "java")
90+
9091
repositories {
9192
mavenCentral()
9293
maven {
9394
name = "papermc-repo"
9495
url = uri("https://repo.papermc.io/repository/maven-public/")
9596
}
97+
maven {
98+
name = "AlessioDP"
99+
url = uri("https://repo.alessiodp.com/releases")
100+
}
96101
}
97-
}
98102

99-
repositories {
100-
maven {
101-
name = "sonatype"
102-
url = uri("https://oss.sonatype.org/content/groups/public/")
103+
dependencies {
104+
// JetBrains Annotations
105+
compileOnly(rootProject.libs.jetbrains.annotations)
106+
107+
// Lombok
108+
compileOnly(rootProject.libs.lombok)
109+
annotationProcessor(rootProject.libs.lombok)
103110
}
104-
maven {
105-
name = "AlessioDP"
106-
url = uri("https://repo.alessiodp.com/releases")
111+
112+
tasks.withType<JavaCompile>().configureEach {
113+
if (targetJavaVersion >= 10 || JavaVersion.current().isJava10Compatible) {
114+
options.release = targetJavaVersion
115+
options.encoding = "UTF-8"
116+
}
117+
}
118+
119+
java {
120+
val javaVersion = JavaVersion.toVersion(targetJavaVersion)
121+
sourceCompatibility = javaVersion
122+
targetCompatibility = javaVersion
123+
if (JavaVersion.current() < javaVersion) {
124+
toolchain.languageVersion = JavaLanguageVersion.of(targetJavaVersion)
125+
}
107126
}
108127
}
109128

110129
dependencies {
111-
// JetBrains Annotations
112-
compileOnly(libs.jetbrains.annotations)
113-
114-
// Paper API
115130
compileOnly(libs.paper.api)
116131

117-
// Lombok
118-
compileOnly(libs.lombok)
119-
annotationProcessor(libs.lombok)
132+
implementation(libs.bundles.shade)
120133

121-
// Ansi
122-
compileOnly(libs.jansi)
123-
bukkitLibrary(libs.jansi)
124-
125-
// Libby
126-
implementation(libs.libby)
127-
128-
// Folia module
129134
implementation(project(":folia"))
130-
}
131-
132-
val targetJavaVersion = 17
133-
134-
tasks.withType<JavaCompile>().configureEach {
135-
if (targetJavaVersion >= 10 || JavaVersion.current().isJava10Compatible) {
136-
options.release = targetJavaVersion
137-
options.encoding = "UTF-8"
138-
}
139-
}
140135

141-
java {
142-
val javaVersion = JavaVersion.toVersion(targetJavaVersion)
143-
sourceCompatibility = javaVersion
144-
targetCompatibility = javaVersion
145-
if (JavaVersion.current() < javaVersion) {
146-
toolchain.languageVersion = JavaLanguageVersion.of(targetJavaVersion)
147-
}
136+
implementation(project(":plugin"))
148137
}
149138

150139
tasks.named<Jar>("jar") {
151140
enabled = false
152141
}
153142

154-
bukkit {
155-
name = "AdriAPI"
156-
main = "me.adrigamer2950.adriapi.AdriAPI"
157-
apiVersion = "1.17"
158-
author = properties["author"] as String?
159-
description = properties["description"] as String?
160-
website = "https://github.com/Adrigamer2950/AdriAPI"
161-
load = BukkitPluginDescription.PluginLoadOrder.STARTUP
162-
foliaSupported = true
163-
164-
commands {
165-
register("adriapi") {
166-
description = "Main command"
167-
usage = "/adriapi"
168-
}
169-
}
170-
}
171-
172143
fun getJarFile(): File? {
173144
val jarFile = File("./gh-assets").listFiles()?.firstOrNull { it.name.endsWith(".jar") }
174145
return jarFile

‎gradle.properties

+3-1
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
11
version=2.3.0-BETA
22
description=An API aimed to simplify the development of Paper plugins
3-
author=Adrigamer2950
3+
author=Adrigamer2950
4+
5+
java-version=17

‎gradle/libs.versions.toml

+4-1
Original file line numberDiff line numberDiff line change
@@ -24,4 +24,7 @@ plugin-yml = { id = "net.minecrell.plugin-yml.bukkit", version.ref = "plugin-yml
2424
minotaur = { id = "com.modrinth.minotaur", version.ref = "minotaur" }
2525
run-server = { id = "xyz.jpenilla.run-paper", version.ref = "run-server" }
2626
shadow = { id = "com.github.johnrengelman.shadow", version.ref = "shadow"}
27-
hangar-publish = { id = "io.papermc.hangar-publish-plugin", version.ref = "hangar-publish-plugin" }
27+
hangar-publish = { id = "io.papermc.hangar-publish-plugin", version.ref = "hangar-publish-plugin" }
28+
29+
[bundles]
30+
shade = ["jansi", "libby"]

‎plugin/build.gradle.kts

+40
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
@file:Suppress("VulnerableLibrariesLocal")
2+
3+
import net.minecrell.pluginyml.bukkit.BukkitPluginDescription
4+
5+
plugins {
6+
id("java")
7+
alias(libs.plugins.plugin.yml)
8+
}
9+
10+
dependencies {
11+
// Paper API
12+
compileOnly(libs.paper.api)
13+
14+
// Ansi
15+
compileOnly(libs.jansi)
16+
17+
// Libby
18+
compileOnly(libs.libby)
19+
20+
// Folia module
21+
compileOnly(project(":folia"))
22+
}
23+
24+
bukkit {
25+
name = "AdriAPI"
26+
main = "me.adrigamer2950.adriapi.plugin.AdriAPI"
27+
apiVersion = "1.17"
28+
author = properties["author"] as String?
29+
description = properties["description"] as String?
30+
website = "https://github.com/Adrigamer2950/AdriAPI"
31+
load = BukkitPluginDescription.PluginLoadOrder.STARTUP
32+
foliaSupported = true
33+
34+
commands {
35+
register("adriapi") {
36+
description = "Main command"
37+
usage = "/adriapi"
38+
}
39+
}
40+
}

‎src/main/java/me/adrigamer2950/adriapi/AdriAPI.java renamed to ‎plugin/src/main/java/me/adrigamer2950/adriapi/plugin/AdriAPI.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package me.adrigamer2950.adriapi;
1+
package me.adrigamer2950.adriapi.plugin;
22

33
import me.adrigamer2950.adriapi.api.APIPlugin;
44
import me.adrigamer2950.adriapi.listeners.CustomEventsListener;

‎src/main/java/me/adrigamer2950/adriapi/AdriAPICommand.java renamed to ‎plugin/src/main/java/me/adrigamer2950/adriapi/plugin/AdriAPICommand.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package me.adrigamer2950.adriapi;
1+
package me.adrigamer2950.adriapi.plugin;
22

33
import me.adrigamer2950.adriapi.api.command.Command;
44
import me.adrigamer2950.adriapi.api.user.User;

‎src/main/java/me/adrigamer2950/adriapi/listeners/CustomEventsListener.java renamed to ‎plugin/src/main/java/me/adrigamer2950/adriapi/plugin/listeners/CustomEventsListener.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package me.adrigamer2950.adriapi.listeners;
1+
package me.adrigamer2950.adriapi.plugin.listeners;
22

33
import me.adrigamer2950.adriapi.api.event.item.ItemCraftedEvent;
44
import org.bukkit.Bukkit;

‎src/main/java/me/adrigamer2950/adriapi/listeners/InventoriesListener.java renamed to ‎plugin/src/main/java/me/adrigamer2950/adriapi/plugin/listeners/InventoriesListener.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package me.adrigamer2950.adriapi.listeners;
1+
package me.adrigamer2950.adriapi.plugin.listeners;
22

33
import me.adrigamer2950.adriapi.api.inventory.Inventory;
44
import org.bukkit.event.EventHandler;

‎settings.gradle.kts

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,4 @@ plugins {
44

55
rootProject.name = "AdriAPI"
66

7-
include("folia")
7+
include("folia", "plugin")

‎src/main/java/me/adrigamer2950/adriapi/api/inventory/Inventory.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
import lombok.Getter;
44
import lombok.NonNull;
55
import me.adrigamer2950.adriapi.api.user.User;
6-
import me.adrigamer2950.adriapi.listeners.InventoriesListener;
6+
import me.adrigamer2950.adriapi.plugin.listeners.InventoriesListener;
77
import net.kyori.adventure.text.Component;
88
import org.bukkit.Bukkit;
99
import org.bukkit.event.inventory.InventoryClickEvent;

0 commit comments

Comments
 (0)
Please sign in to comment.