This repository was archived by the owner on Dec 17, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathbuild.gradle.kts
More file actions
90 lines (81 loc) · 3.53 KB
/
build.gradle.kts
File metadata and controls
90 lines (81 loc) · 3.53 KB
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
@file:Suppress("PropertyName", "SpellCheckingInspection")
import com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
val taboolib_version: String by project
val kotlinVersionNum: String
get() = project.kotlin.coreLibrariesVersion.replace(".", "")
plugins {
java
id("org.jetbrains.kotlin.jvm") version "1.9.0"
id("com.github.johnrengelman.shadow") version "7.1.2" apply false
}
subprojects {
apply<JavaPlugin>()
apply(plugin = "org.jetbrains.kotlin.jvm")
apply(plugin = "com.github.johnrengelman.shadow")
repositories {
mavenLocal()
mavenCentral()
maven {
url = uri("http://ptms.ink:8081/repository/releases/")
isAllowInsecureProtocol = true
}
maven("https://repo.spongepowered.org/maven")
}
dependencies {
compileOnly(kotlin("stdlib"))
// 引入 Taboolib
// 注意 common 模块不可使用 implementation 引入(即使用 ShadowJar 插件打包)
// 因为需要借助 TabooLib Gradle 插件修改一些东西
compileOnly("io.izzel.taboolib:common:$taboolib_version")
compileOnly("redis.clients:jedis:4.2.3")
// 使用 shadowJar 插件打包的模块
implementation("io.izzel.taboolib:common-5:$taboolib_version")
implementation("io.izzel.taboolib:module-chat:$taboolib_version")
implementation("io.izzel.taboolib:module-configuration:$taboolib_version")
implementation("io.izzel.taboolib:module-database:$taboolib_version")
// implementation("io.izzel.taboolib:module-lang:$taboolib_version")
// implementation("io.izzel.taboolib:module-metrics:$taboolib_version")
implementation("io.izzel.taboolib:module-nms:$taboolib_version")
implementation("io.izzel.taboolib:platform-bukkit:$taboolib_version")
implementation("io.izzel.taboolib:platform-bungee:$taboolib_version")
implementation("io.izzel.taboolib:platform-velocity:$taboolib_version")
implementation("io.izzel.taboolib:expansion-command-helper:$taboolib_version")
// implementation("io.izzel.taboolib:expansion-persistent-container-object:$taboolib_version")
implementation("com.alibaba.fastjson2:fastjson2-kotlin:2.0.39-SNAPSHOT")
implementation("com.eatthepath:fast-uuid:0.2.0")
}
// =============================
// 下面的东西不用动
// =============================
java {
withSourcesJar()
sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8
}
tasks.withType<JavaCompile> {
options.encoding = "UTF-8"
}
tasks.withType<KotlinCompile> {
kotlinOptions {
jvmTarget = "1.8"
freeCompilerArgs = listOf("-Xjvm-default=all", "-Xextended-compiler-checks")
}
}
// 这里不要乱改
tasks.withType<ShadowJar> {
// 重定向 TabooLib
relocate("taboolib", "${rootProject.group}.taboolib")
// 重定向 Kotlin
relocate("kotlin.", "kotlin${kotlinVersionNum}.") { exclude("kotlin.Metadata") }
// =============================
// 如果你要重定向就在下面加
// =============================
relocate("com.alibaba.fastjson2", "${rootProject.group}.libs.fastjson2")
relocate("com.eatthepath.uuid", "${rootProject.group}.libs.uuid")
relocate("redis.clients.jedis.", "redis.clients.jedis_4_2_3.")
}
}
gradle.buildFinished {
buildDir.deleteRecursively()
}