mirror of
https://github.com/ethauvin/kobalt.git
synced 2025-04-26 16:28:12 -07:00
Implements args() for application {}.
This commit is contained in:
parent
a5c3c93657
commit
ff94cc5e3f
1 changed files with 7 additions and 3 deletions
|
@ -20,9 +20,12 @@ import java.io.File
|
||||||
@Directive
|
@Directive
|
||||||
class ApplicationConfig {
|
class ApplicationConfig {
|
||||||
var mainClass: String? = null
|
var mainClass: String? = null
|
||||||
var jvmArgs = arrayListOf<String>()
|
|
||||||
|
|
||||||
|
val jvmArgs = arrayListOf<String>()
|
||||||
fun jvmArgs(vararg args: String) = args.forEach { jvmArgs.add(it) }
|
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
|
@Directive
|
||||||
|
@ -93,7 +96,8 @@ class ApplicationPlugin @Inject constructor(val configActor: ConfigActor<Applica
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun runJarFile(project: Project, context: KobaltContext, config: ApplicationConfig) : TaskResult {
|
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),
|
val jarName = (jarFileName ?: KFiles.joinDir(KFiles.libsDir(project),
|
||||||
context.variant.archiveName(project, null, ".jar")))
|
context.variant.archiveName(project, null, ".jar")))
|
||||||
as String
|
as String
|
||||||
|
@ -118,7 +122,7 @@ class ApplicationPlugin @Inject constructor(val configActor: ConfigActor<Applica
|
||||||
val contributorFlags = context.pluginInfo.jvmFlagContributors.flatMap {
|
val contributorFlags = context.pluginInfo.jvmFlagContributors.flatMap {
|
||||||
it.jvmFlagsFor(project, context, initialArgs)
|
it.jvmFlagsFor(project, context, initialArgs)
|
||||||
}
|
}
|
||||||
val args = contributorFlags + initialArgs
|
val args = contributorFlags + initialArgs + config.args
|
||||||
val exitCode = RunCommand(java.absolutePath).run(args,
|
val exitCode = RunCommand(java.absolutePath).run(args,
|
||||||
successCallback = { output: List<String> ->
|
successCallback = { output: List<String> ->
|
||||||
println(output.joinToString("\n"))
|
println(output.joinToString("\n"))
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue