launcher

@get:Optional
abstract val launcher: Property<JavaLauncher>(source)

We require a launcher here and query it so we can let Gradle handle downloading and installation of the appropriate JDKs.