mirror of
https://github.com/runelite/example-plugin.git
synced 2025-12-23 22:38:00 -05:00
62 lines
1.4 KiB
Groovy
62 lines
1.4 KiB
Groovy
plugins {
|
|
id 'java'
|
|
}
|
|
|
|
repositories {
|
|
mavenLocal()
|
|
maven {
|
|
url = 'https://repo.runelite.net'
|
|
content {
|
|
includeGroupByRegex("net\\.runelite.*")
|
|
}
|
|
}
|
|
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'
|
|
|
|
testImplementation 'junit:junit:4.12'
|
|
testImplementation group: 'net.runelite', name:'client', version: runeLiteVersion
|
|
testImplementation group: 'net.runelite', name:'jshell', version: runeLiteVersion
|
|
}
|
|
|
|
group = 'com.example'
|
|
version = '1.0-SNAPSHOT'
|
|
|
|
tasks.withType(JavaCompile).configureEach {
|
|
options.encoding = 'UTF-8'
|
|
options.release.set(11)
|
|
}
|
|
|
|
tasks.register('shadowJar', Jar) {
|
|
dependsOn configurations.testRuntimeClasspath
|
|
manifest {
|
|
attributes('Main-Class': 'com.example.ExamplePluginTest', 'Multi-Release': true)
|
|
}
|
|
|
|
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")
|
|
}
|