kastree icon indicating copy to clipboard operation
kastree copied to clipboard

I can't run the example

Open alitarfa opened this issue 4 years ago • 2 comments

Hi everyone, is there anyone who can tell me why I have this error message when I try to run the simple example

Exception in thread "main" java.lang.IllegalStateException: LOGGING: Loading modules: [java.se, jdk.accessibility, jdk.attach, jdk.compiler, jdk.dynalink, jdk.httpserver, jdk.jartool, jdk.javadoc, jdk.jconsole, jdk.jdi, jdk.jfr, jdk.jshell, jdk.jsobject, jdk.management, jdk.management.jfr, jdk.naming.ldap, jdk.net, jdk.scripting.nashorn, jdk.sctp, jdk.security.auth, jdk.security.jgss, jdk.unsupported, jdk.unsupported.desktop, jdk.xml.dom, java.base, java.compiler, java.datatransfer, java.desktop, java.xml, java.instrument, java.logging, java.management, java.management.rmi, java.rmi, java.naming, java.net.http, java.prefs, java.scripting, java.security.jgss, java.security.sasl, java.sql, java.transaction.xa, java.sql.rowset, java.xml.crypto, jdk.internal.jvmstat, jdk.management.agent, jdk.jdwp.agent, jdk.internal.ed, jdk.internal.le, jdk.internal.opt] (no MessageCollector configured)
	at org.jetbrains.kotlin.cli.jvm.compiler.ClasspathRootsResolver.report(ClasspathRootsResolver.kt:312)
	at org.jetbrains.kotlin.cli.jvm.compiler.ClasspathRootsResolver.report$default(ClasspathRootsResolver.kt:310)
	at org.jetbrains.kotlin.cli.jvm.compiler.ClasspathRootsResolver.addModularRoots(ClasspathRootsResolver.kt:253)
	at org.jetbrains.kotlin.cli.jvm.compiler.ClasspathRootsResolver.computeRoots(ClasspathRootsResolver.kt:123)
	at org.jetbrains.kotlin.cli.jvm.compiler.ClasspathRootsResolver.convertClasspathRoots(ClasspathRootsResolver.kt:79)
	at org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment.<init>(KotlinCoreEnvironment.kt:213)
	at org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment.<init>(KotlinCoreEnvironment.kt:109)
	at org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment$Companion.createForProduction(KotlinCoreEnvironment.kt:421)
	at kastree.ast.psi.Parser$proj$2.invoke(Parser.kt:16)
	at kastree.ast.psi.Parser$proj$2.invoke(Parser.kt:14)
	at kotlin.SynchronizedLazyImpl.getValue(LazyJVM.kt:74)
	at kastree.ast.psi.Parser.getProj(Parser.kt)
	at kastree.ast.psi.Parser.parsePsiFile(Parser.kt:30)
	at kastree.ast.psi.Parser.parseFile(Parser.kt:23)
	at kastree.ast.psi.Parser.parseFile$default(Parser.kt:23)
	at com.example.demo.MainKt.main(main.kt:13)
	at com.example.demo.MainKt.main(main.kt)

alitarfa avatar Jan 26 '21 10:01 alitarfa

This is probably due to this old project referencing a really old Kotlin compiler lib. This library is no longer maintained. Maybe https://github.com/kotlinx/ast would work better.

cretz avatar Jan 26 '21 14:01 cretz

I have solved this issue on kotlin-1.5.31, you should make some change in Parser.kt as following code:

KotlinCoreEnvironment.createForProduction( Disposer.newDisposable(), CompilerConfiguration().also { configuration-> configuration.put( CLIConfigurationKeys.MESSAGE_COLLECTOR_KEY, PrintingMessageCollector(System.err, MessageRenderer.PLAIN_FULL_PATHS, false) ) configuration.put(CommonConfigurationKeys.MODULE_NAME, "detekt") }, EnvironmentConfigFiles.JVM_CONFIG_FILES ).project

BladesOfTime avatar Jul 14 '22 07:07 BladesOfTime