70 lines
1.6 KiB
Groovy
70 lines
1.6 KiB
Groovy
import proguard.gradle.ProGuardTask
|
|
|
|
buildscript {
|
|
repositories {
|
|
mavenLocal()
|
|
mavenCentral()
|
|
google()
|
|
}
|
|
dependencies {
|
|
classpath 'com.guardsquare:proguard-gradle:7.3.1'
|
|
}
|
|
}
|
|
|
|
plugins {
|
|
id 'org.jetbrains.kotlin.jvm' version '1.8.0'
|
|
id 'application'
|
|
}
|
|
|
|
group = 'org.example'
|
|
version = '1.0-SNAPSHOT'
|
|
|
|
repositories {
|
|
mavenCentral()
|
|
}
|
|
|
|
dependencies {
|
|
testImplementation 'org.jetbrains.kotlin:kotlin-test'
|
|
}
|
|
|
|
test {
|
|
useJUnitPlatform()
|
|
}
|
|
|
|
compileKotlin {
|
|
kotlinOptions.jvmTarget = '1.8'
|
|
}
|
|
|
|
compileTestKotlin {
|
|
kotlinOptions.jvmTarget = '1.8'
|
|
}
|
|
|
|
application {
|
|
mainClassName = 'AppKt'
|
|
}
|
|
|
|
ext.baseCoordinates = "${project.name}-${project.version}"
|
|
|
|
tasks.register('proguard', ProGuardTask) {
|
|
configuration file('proguard.pro')
|
|
|
|
injars(tasks.named('jar', Jar).flatMap { it.archiveFile })
|
|
|
|
// Automatically handle the Java version of this build.
|
|
if (System.getProperty('java.version').startsWith('1.')) {
|
|
// Before Java 9, the runtime classes were packaged in a single jar file.
|
|
libraryjars "${System.getProperty('java.home')}/lib/rt.jar"
|
|
} else {
|
|
// As of Java 9, the runtime classes are packaged in modular jmod files.
|
|
libraryjars "${System.getProperty('java.home')}/jmods/java.base.jmod", jarfilter: '!**.jar', filter: '!module-info.class'
|
|
//libraryjars "${System.getProperty('java.home')}/jmods/....."
|
|
}
|
|
|
|
// This will include the Kotlin library jars
|
|
libraryjars sourceSets.main.compileClasspath
|
|
|
|
verbose
|
|
|
|
outjars(layout.buildDirectory.file("libs/${baseCoordinates}-minified.jar"))
|
|
}
|