AA standalone: use IJ platform in headless mode
This commit is contained in:
committed by
Ilya Kirillov
parent
2e26b0956e
commit
4a872928dd
+5
-1
@@ -24,7 +24,6 @@ import org.jetbrains.kotlin.analysis.api.standalone.base.project.structure.Stand
|
|||||||
import org.jetbrains.kotlin.analysis.decompiled.light.classes.ClsJavaStubByVirtualFileCache
|
import org.jetbrains.kotlin.analysis.decompiled.light.classes.ClsJavaStubByVirtualFileCache
|
||||||
import org.jetbrains.kotlin.analysis.low.level.api.fir.api.services.FirSealedClassInheritorsProcessorFactory
|
import org.jetbrains.kotlin.analysis.low.level.api.fir.api.services.FirSealedClassInheritorsProcessorFactory
|
||||||
import org.jetbrains.kotlin.analysis.low.level.api.fir.project.structure.LLFirBuiltinsSessionFactory
|
import org.jetbrains.kotlin.analysis.low.level.api.fir.project.structure.LLFirBuiltinsSessionFactory
|
||||||
import org.jetbrains.kotlin.analysis.low.level.api.fir.project.structure.LLFirLibrarySessionFactory
|
|
||||||
import org.jetbrains.kotlin.analysis.project.structure.KtModuleScopeProvider
|
import org.jetbrains.kotlin.analysis.project.structure.KtModuleScopeProvider
|
||||||
import org.jetbrains.kotlin.analysis.project.structure.KtModuleScopeProviderImpl
|
import org.jetbrains.kotlin.analysis.project.structure.KtModuleScopeProviderImpl
|
||||||
import org.jetbrains.kotlin.analysis.project.structure.ProjectStructureProvider
|
import org.jetbrains.kotlin.analysis.project.structure.ProjectStructureProvider
|
||||||
@@ -59,6 +58,11 @@ public class StandaloneAnalysisAPISessionBuilder(
|
|||||||
projectDisposable: Disposable,
|
projectDisposable: Disposable,
|
||||||
) {
|
) {
|
||||||
init {
|
init {
|
||||||
|
// We depend on swing (indirectly through PSI or something), so we want to declare headless mode,
|
||||||
|
// to avoid accidentally starting the UI thread. But, don't set it if it was set externally.
|
||||||
|
if (System.getProperty("java.awt.headless") == null) {
|
||||||
|
System.setProperty("java.awt.headless", "true")
|
||||||
|
}
|
||||||
setupIdeaStandaloneExecution()
|
setupIdeaStandaloneExecution()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user