-
Notifications
You must be signed in to change notification settings - Fork 0
/
build.gradle.kts
92 lines (79 loc) · 2.28 KB
/
build.gradle.kts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
/* Imports */
import io.papermc.paperweight.userdev.ReobfArtifactConfiguration
import java.util.Locale
/* Plugins */
plugins {
id("java")
id("maven-publish")
id("io.papermc.paperweight.userdev").version("1.7.3")
}
/* Project Info */
allprojects {
group = "moe.caramel"
version = property("version") as String
description = "Wrapper for plugins that cannot use Daydream dependencies"
}
java {
toolchain.languageVersion.set(JavaLanguageVersion.of(21))
withSourcesJar()
withJavadocJar()
}
/* Dependencies */
val gameVersion = property("version") as String
allprojects {
apply(plugin = "java")
repositories {
mavenCentral()
maven(url = "https://repo.caramel.moe/repository/maven-public/") // caramel-repo
maven(url = "https://repo.papermc.io/repository/maven-public/") // papermc-repo
}
dependencies {
/* Daydream API */
compileOnly("moe.caramel", "daydream-api", gameVersion)
}
}
dependencies {
/* Paper Server */
paperweight.paperDevBundle(gameVersion) {
exclude(module = "paper-mojangapi")
exclude(module = "paper-api")
}
}
configurations.all { // OMG
exclude("io.papermc.paper", "paper-api")
}
/* Tasks */
tasks {
build {
if (rootProject.childProjects["test-plugin"] != null) {
finalizedBy(rootProject.project(":test-plugin").tasks.build)
}
}
compileJava {
options.encoding = Charsets.UTF_8.name()
options.release.set(21)
}
javadoc {
options.encoding = Charsets.UTF_8.name()
}
processResources {
filteringCharset = Charsets.UTF_8.name()
}
}
paperweight.reobfArtifactConfiguration = ReobfArtifactConfiguration.MOJANG_PRODUCTION
/* Publish */
val isSnapshot = project.version.toString().endsWith("-SNAPSHOT")
configure<PublishingExtension> {
repositories.maven {
name = "caramel"
url = uri("https://repo.caramel.moe/repository/maven-" + (if (isSnapshot) "snapshots" else "releases") + "/")
credentials {
username = System.getenv("DEPLOY_ID")
password = System.getenv("DEPLOY_PW")
}
}
publications.create<MavenPublication>("maven") {
artifactId = project.name.lowercase(Locale.ENGLISH)
from(components["java"])
}
}