generated from runelite/example-plugin
-
-
Notifications
You must be signed in to change notification settings - Fork 418
/
build.gradle
76 lines (61 loc) · 2.23 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
plugins {
id 'java'
}
repositories {
mavenLocal()
maven {
url = 'https://repo.runelite.net'
}
mavenCentral()
}
def runeLiteVersion = 'latest.release'
dependencies {
compileOnly group: 'net.runelite', name:'client', version: runeLiteVersion
compileOnly 'org.projectlombok:lombok:1.18.30'
annotationProcessor 'org.projectlombok:lombok:1.18.30'
// 23.0.0 is verified by RuneLite
compileOnly 'org.jetbrains:annotations:23.0.0'
testImplementation group: 'net.runelite', name:'client', version: runeLiteVersion
testImplementation group: 'net.runelite', name:'jshell', version: runeLiteVersion
def junitVersion = "5.5.2" // max version before junit-bom was added to pom files, due to runelite restrictions
testImplementation group: "org.junit.jupiter", name: "junit-jupiter-api", version: junitVersion
testImplementation group: "org.junit.jupiter", name: "junit-jupiter-params", version: junitVersion
testImplementation group: "org.junit.jupiter", name: "junit-jupiter-engine", version: junitVersion
testImplementation group: 'org.mockito', name:'mockito-core', version: "4.11.0" // runelite uses 3.1.0
testImplementation group: 'org.mockito', name:'mockito-inline', version: "4.11.0"
testImplementation(group: 'com.google.inject.extensions', name:'guice-testlib', version: "4.1.0") {
exclude group: 'com.google.inject', module: 'guice' // already provided by runelite
}
}
group = 'com.questhelper'
version = '4.7.3.1'
sourceCompatibility = "11"
tasks.withType(JavaCompile) {
options.encoding = 'UTF-8'
}
tasks.test {
useJUnitPlatform()
}
targetCompatibility = JavaVersion.VERSION_11
tasks.register("shadowJar", Jar) {
dependsOn configurations.testRuntimeClasspath
manifest {
attributes("Main-Class": "com.questhelper.QuestHelperPluginTest")
}
duplicatesStrategy = DuplicatesStrategy.EXCLUDE
from sourceSets.main.output
from sourceSets.test.output
from {
configurations.testRuntimeClasspath.collect { file ->
file.isDirectory() ? file : zipTree(file)
}
}
exclude "META-INF/INDEX.LIST"
exclude "META-INF/*.SF"
exclude "META-INF/*.DSA"
exclude "META-INF/*.RSA"
exclude "**/module-info.class"
group = BasePlugin.BUILD_GROUP
archiveClassifier.set("shadow")
archiveFileName.set("${rootProject.name}-${project.version}-all.jar")
}