Close kapt context
This commit is contained in:
@@ -17,6 +17,7 @@ import org.jetbrains.kotlin.kapt3.base.javac.KaptJavaLog
|
|||||||
import org.jetbrains.kotlin.kapt3.base.util.KaptLogger
|
import org.jetbrains.kotlin.kapt3.base.util.KaptLogger
|
||||||
import org.jetbrains.kotlin.kapt3.base.util.isJava9OrLater
|
import org.jetbrains.kotlin.kapt3.base.util.isJava9OrLater
|
||||||
import org.jetbrains.kotlin.kapt3.base.util.putJavacOption
|
import org.jetbrains.kotlin.kapt3.base.util.putJavacOption
|
||||||
|
import java.io.Closeable
|
||||||
import java.io.File
|
import java.io.File
|
||||||
import javax.tools.JavaFileManager
|
import javax.tools.JavaFileManager
|
||||||
|
|
||||||
@@ -27,7 +28,7 @@ open class KaptContext(
|
|||||||
private val mapDiagnosticLocations: Boolean,
|
private val mapDiagnosticLocations: Boolean,
|
||||||
processorOptions: Map<String, String>,
|
processorOptions: Map<String, String>,
|
||||||
javacOptions: Map<String, String> = emptyMap()
|
javacOptions: Map<String, String> = emptyMap()
|
||||||
) : AutoCloseable {
|
) : Closeable {
|
||||||
val context = Context()
|
val context = Context()
|
||||||
val compiler: KaptJavaCompiler
|
val compiler: KaptJavaCompiler
|
||||||
val fileManager: KaptJavaFileManager
|
val fileManager: KaptJavaFileManager
|
||||||
|
|||||||
@@ -149,8 +149,9 @@ abstract class AbstractKapt3Extension(
|
|||||||
if (aptMode.generateStubs) {
|
if (aptMode.generateStubs) {
|
||||||
logger.info { "Kotlin files to compile: " + files.map { it.virtualFile?.name ?: "<in memory ${it.hashCode()}>" } }
|
logger.info { "Kotlin files to compile: " + files.map { it.virtualFile?.name ?: "<in memory ${it.hashCode()}>" } }
|
||||||
|
|
||||||
val kaptContext = compileStubs(project, module, bindingContext, files.toList())
|
contextForStubGeneration(project, module, bindingContext, files.toList()).use { context ->
|
||||||
generateKotlinSourceStubs(kaptContext)
|
generateKotlinSourceStubs(context)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!aptMode.runAnnotationProcessing) return doNotGenerateCode()
|
if (!aptMode.runAnnotationProcessing) return doNotGenerateCode()
|
||||||
@@ -212,7 +213,7 @@ abstract class AbstractKapt3Extension(
|
|||||||
logger.info { "Annotation processing took $annotationProcessingTime ms" }
|
logger.info { "Annotation processing took $annotationProcessingTime ms" }
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun compileStubs(
|
private fun contextForStubGeneration(
|
||||||
project: Project,
|
project: Project,
|
||||||
module: ModuleDescriptor,
|
module: ModuleDescriptor,
|
||||||
bindingContext: BindingContext,
|
bindingContext: BindingContext,
|
||||||
|
|||||||
Reference in New Issue
Block a user