Launcher/LaunchServer/build.gradle

82 lines
2.1 KiB
Groovy

def mainClassName = "ru.gravit.launchserver.LaunchServer"
def mainAgentName = "ru.gravit.launchserver.StarterAgent"
repositories {
maven {
url "http://maven.geomajas.org/"
}
maven {
url "https://oss.sonatype.org/content/repositories/snapshots"
}
}
sourceCompatibility = '1.8'
targetCompatibility = '1.8'
configurations {
bundleOnly
bundle
hikari
pack
bundleOnly.extendsFrom bundle
compile.extendsFrom bundle, hikari, pack
}
jar {
dependsOn parent.childProjects.Launcher.tasks.build
from { configurations.pack.collect { it.isDirectory() ? it : zipTree(it) } }
from(parent.childProjects.Launcher.tasks.jar.archivePath, parent.childProjects.Launcher.tasks.genRuntimeJS.archivePath)
manifest.attributes("Main-Class": mainClassName,
"Premain-Class": mainAgentName,
"Can-Redefine-Classes": "true",
"Can-Retransform-Classes": "true",
"Can-Set-Native-Method-Prefix": "true"
)
}
dependencies {
pack project(':libLauncher')
bundle 'org.ow2.asm:asm-commons:7.0'
bundle 'org.ow2.asm:asm-util:7.0'
bundle 'mysql:mysql-connector-java:8.0.13'
bundle 'jline:jline:2.14.6'
bundle 'net.sf.proguard:proguard-base:6.0.3'
bundle 'org.fusesource.jansi:jansi:1.17.1'
bundle 'commons-io:commons-io:2.6'
bundle 'commons-codec:commons-codec:1.11'
bundle 'org.javassist:javassist:3.23.1-GA'
bundle 'io.netty:netty-all:4.1.32.Final'
bundle 'org.slf4j:slf4j-simple:1.7.25'
bundle 'org.slf4j:slf4j-api:1.7.25'
hikari 'io.micrometer:micrometer-core:1.0.6'
hikari('com.zaxxer:HikariCP:3.2.0') {
exclude group: 'javassist'
exclude group: 'io.micrometer'
exclude group: 'org.slf4j'
}
compileOnly('net.sf.launch4j:launch4j:3.12') { // need user
exclude group: '*'
}
}
task hikari(type: Copy) {
into "$buildDir/libs/libraries/hikaricp"
from configurations.hikari
}
task dumpLibs(type: Copy) {
dependsOn tasks.hikari
into "$buildDir/libs/libraries"
from configurations.bundleOnly
}
task dumpClientLibs(type: Copy) {
dependsOn parent.childProjects.Launcher.tasks.build
into "$buildDir/libs/launcher-libraries"
from parent.childProjects.Launcher.tasks.dumpLibs.destinationDir
}
build.dependsOn tasks.dumpLibs, tasks.dumpClientLibs