96ed30a449
The old API was too specific for the Kotlin internal use cases and leaked some abstractions due to the missing target-compilation project model. One of such leaking abstractions was the Gradle tasks being exposed to the subplugin, which required the tasks to instantiate in order for the subplugin to apply. This violated task configuration avoidance, so the old API could never work in compliance with TCA. Introduce the new KotlinCompilerPluginSupportPlugin API that uses the compilations instead of the tasks and is TCA-compliant.
Gradle Plugin
The Gradle plugin sources can be found in this (kotlin-gradle-plugin) module.
To install the Gradle plugin into the local Maven repository, run this command from the root of Kotlin project:
./gradlew :kotlin-gradle-plugin:install
The subplugin modules are :kotlin-allopen, :kotlin-noarg, :kotlin-sam-with-receiver. To install them, run:
./gradlew :kotlin-allopen:install :kotlin-noarg:install :kotlin-sam-with-receiver:install
To find more details about the plugins provided by this artifact and their tasks refer to Module.md.
Gradle Plugin Integration Tests
See the module libraries/tools/kotlin-gradle-plugin-integration-tests