I have two tasks that launch a Java program. They are very similar. How do I remove the duplication between them, especially since I will almost certainly add more launchers to the project?
task(exportBallsThrownDetails, dependsOn: 'classes', type: JavaExec) {
// https://github.com/gradle/gradle/issues/14363
javaLauncher = javaToolchains.launcherFor {
languageVersion = JavaLanguageVersion.of(17)
}
mainClass = 'ca.jbrains.wcbt.ExportBallsThrownDetails'
classpath = sourceSets.main.runtimeClasspath
workingDir = rootProject.projectDir
args ''
}
task(exportGameSummaries, dependsOn: 'classes', type: JavaExec) {
// https://github.com/gradle/gradle/issues/14363
javaLauncher = javaToolchains.launcherFor {
languageVersion = JavaLanguageVersion.of(17)
}
mainClass = 'ca.jbrains.wcbt.ExportGameSummaries'
classpath = sourceSets.main.runtimeClasspath
workingDir = rootProject.projectDir
args ''
}