-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbuild.gradle
109 lines (90 loc) · 3.68 KB
/
build.gradle
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
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
/*
* Copyright 2021 CodeMC.io
*
* 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.
*/
plugins {
id "java"
id "application"
id "com.github.johnrengelman.shadow" version "8.1.1"
id "jacoco"
}
group 'io.codemc'
version '2.1.0'
compileJava.options.encoding('UTF-8')
repositories {
mavenCentral()
mavenLocal()
maven { url = 'https://jitpack.io' }
maven { url = 'https://repo.codemc.io/repository/codemc' }
maven { url = 'https://repo.codemc.io/repository/codemc' }
maven { url = 'https://m2.chew.pro/releases' }
maven { url = 'https://m2.coly.dev/releases' }
}
dependencies {
implementation group: 'ch.qos.logback', name: 'logback-classic', version: '1.5.16'
implementation(group: 'net.dv8tion', name: 'JDA', version:'5.3.0'){
exclude(module: 'opus-java')
}
implementation group: 'pw.chew', name: 'jda-chewtils-commons', version: '2.0'
implementation group: 'pw.chew', name: 'jda-chewtils-command', version: '2.0'
implementation group: 'org.spongepowered', name: 'configurate-gson', version: '4.1.2'
implementation group: 'io.codemc.api', name: 'codemc-api', version: '1.2.0'
implementation group: 'org.jetbrains.kotlinx', name: 'kotlinx-coroutines-core', version: '1.10.1'
implementation group: 'org.jetbrains.kotlinx', name: 'kotlinx-serialization-json', version: '1.8.0'
implementation group: 'org.mariadb.jdbc', name: 'mariadb-java-client', version: '3.5.1'
implementation group: 'org.jetbrains.exposed', name: 'exposed-core', version: '0.59.0'
implementation group: 'org.jetbrains.exposed', name: 'exposed-jdbc', version: '0.59.0'
testImplementation group: 'org.junit.jupiter', name: 'junit-jupiter-api', version: '5.11.4'
testImplementation group: 'dev.coly', name: 'JDATesting', version: '0.7.0'
testImplementation group: 'org.mockito', name: 'mockito-core', version: '5.15.2'
}
tasks {
clean {
delete "logs"
}
test {
useJUnitPlatform()
testLogging {
events "passed", "skipped", "failed"
showStandardStreams = true
}
finalizedBy jacocoTestReport
}
jacocoTestReport {
dependsOn test
reports {
csv.required = false
xml.required = true
xml.outputLocation = layout.buildDirectory.file("jacoco.xml").get().asFile
html.required = true
html.outputLocation = layout.buildDirectory.dir("jacocoHtml").get().asFile
}
}
}
artifacts {
archives(shadowJar)
}
shadowJar {
archiveFileName = "CodeMC-Bot.jar"
}
application {
mainClassName = 'io.codemc.bot.CodeMCBot'
}
java {
toolchain {
languageVersion.set(JavaLanguageVersion.of(17))
}
}