Adding generation states destroying to module-based compilation, to fix kapt usage with this compilation path
This commit is contained in:
committed by
Zalim Bashorov
parent
3615ca5b02
commit
c585d91e79
+15
-4
@@ -49,6 +49,7 @@ import java.io.File
|
||||
import java.lang.reflect.Constructor
|
||||
import java.lang.reflect.InvocationTargetException
|
||||
import java.net.URLClassLoader
|
||||
import java.util.*
|
||||
import java.util.concurrent.TimeUnit
|
||||
import java.util.jar.Attributes
|
||||
|
||||
@@ -109,6 +110,8 @@ object KotlinToJVMBytecodeCompiler {
|
||||
|
||||
result.throwIfError()
|
||||
|
||||
val generationStates = ArrayList<GenerationState>();
|
||||
|
||||
for (module in chunk) {
|
||||
ProgressIndicatorAndCompilationCanceledStatus.checkCanceled()
|
||||
val ktFiles = CompileEnvironmentUtil.getKtFiles(
|
||||
@@ -118,13 +121,21 @@ object KotlinToJVMBytecodeCompiler {
|
||||
val generationState = generate(environment, result, ktFiles, module, moduleOutputDirectory,
|
||||
module.getModuleName())
|
||||
outputFiles.put(module, generationState.factory)
|
||||
generationStates.add(generationState);
|
||||
}
|
||||
|
||||
for (module in chunk) {
|
||||
ProgressIndicatorAndCompilationCanceledStatus.checkCanceled()
|
||||
writeOutput(configuration, outputFiles[module]!!, File(module.getOutputDirectory()), jarPath, jarRuntime, null)
|
||||
try {
|
||||
for (module in chunk) {
|
||||
ProgressIndicatorAndCompilationCanceledStatus.checkCanceled()
|
||||
writeOutput(configuration, outputFiles[module]!!, File(module.getOutputDirectory()), jarPath, jarRuntime, null)
|
||||
}
|
||||
return true
|
||||
}
|
||||
finally {
|
||||
for (generationState in generationStates) {
|
||||
generationState.destroy();
|
||||
}
|
||||
}
|
||||
return true
|
||||
}
|
||||
|
||||
fun createCompilerConfiguration(
|
||||
|
||||
Reference in New Issue
Block a user