[KAPT4] Create basic infrastructure for KAPT4

This commit is contained in:
Pavel Mikhailovskii
2023-07-07 11:09:16 +00:00
committed by Space Team
parent fc57f48c8f
commit 083f54aceb
19 changed files with 220 additions and 26 deletions
+6 -1
View File
@@ -114,7 +114,12 @@ private fun transformKaptToolArgs(args: List<String>, messageCollector: MessageC
}
if (!aptModePassed) {
transformed.addAll(0, kaptArg(KaptCliOption.APT_MODE_OPTION, "compile"))
val isK2 = "-Xuse-kapt4" in transformed && ("-Xuse-k2" in transformed ||
transformed.any { it.startsWith("-language-version=2") } ||
transformed.lastIndexOf("-language-version").takeIf { it >= 0 }
?.let { transformed.getOrNull(it + 1)?.startsWith('2') } == true)
transformed.addAll(0, kaptArg(KaptCliOption.APT_MODE_OPTION, if (isK2) "stubsAndApt" else "compile"))
}
if (!isTest && !isAtLeastJava9() && !areJavacComponentsAvailable() && !toolsJarPassed) {
@@ -47,8 +47,7 @@ output/sources/generated/Test.java
Test.kt
# output
warning: kapt currently doesn't support language version 2.0+.
Falling back to 1.9.
warning: kapt currently doesn't support language version 2.0+. Falling back to 1.9.
# java
-cp output/classes:output/javaClasses:output/ap.jar:%KOTLIN_STDLIB%