1
0
Fork 0
mirror of https://github.com/ethauvin/kobalt.git synced 2025-04-26 08:27:12 -07:00

Implements args() for application {}.

This commit is contained in:
Cedric Beust 2017-01-05 12:23:55 -08:00
parent a5c3c93657
commit ff94cc5e3f

View file

@ -20,9 +20,12 @@ import java.io.File
@Directive
class ApplicationConfig {
var mainClass: String? = null
var jvmArgs = arrayListOf<String>()
val jvmArgs = arrayListOf<String>()
fun jvmArgs(vararg args: String) = args.forEach { jvmArgs.add(it) }
val args = arrayListOf<String>()
fun args(vararg argv: String) = argv.forEach { args.add(it) }
}
@Directive
@ -93,7 +96,8 @@ class ApplicationPlugin @Inject constructor(val configActor: ConfigActor<Applica
}
private fun runJarFile(project: Project, context: KobaltContext, config: ApplicationConfig) : TaskResult {
val jarFileName = project.projectProperties.get(Archives.JAR_NAME)
val fileName = project.projectProperties.get(Archives.JAR_NAME) as String
val jarFileName = KFiles.joinDir(KFiles.libsDir(project), fileName)
val jarName = (jarFileName ?: KFiles.joinDir(KFiles.libsDir(project),
context.variant.archiveName(project, null, ".jar")))
as String
@ -118,7 +122,7 @@ class ApplicationPlugin @Inject constructor(val configActor: ConfigActor<Applica
val contributorFlags = context.pluginInfo.jvmFlagContributors.flatMap {
it.jvmFlagsFor(project, context, initialArgs)
}
val args = contributorFlags + initialArgs
val args = contributorFlags + initialArgs + config.args
val exitCode = RunCommand(java.absolutePath).run(args,
successCallback = { output: List<String> ->
println(output.joinToString("\n"))