-
Notifications
You must be signed in to change notification settings - Fork 126
[2.x] Compilers#toString causes sbt.internal.inc.InvalidScalaInstance: "Scala instance doesn't exist or is invalid" #1676
Copy link
Copy link
Open
Labels
Description
steps
In my case I think I called LoadBuildConfiguration#toString, but likely it can be caused by Compilers#toString or ScalaInstance#actualVersion based on the stack trace.
problem
Looks like Zinc looks for https://github.com/scala/scala/blob/v2.13.18/src/compiler/scala/tools/nsc/Properties.scala.
sbt.internal.inc.InvalidScalaInstance: Scala instance doesn't exist or is invalid:
version 3.8.2, library jars: /Users/xxx/.sbt/boot/scala-3.8.2/lib/scala-library.jar, compiler jars: /Users/xxx/.sbt/boot/scala-3.8.2/lib/scala3-interfaces-3.8.2.jar, /Users/xxx/.sbt/boot/scala-3.8.2/lib/scala-library.jar, /Users/xxx/.sbt/boot/scala-3.8.2/lib/scala3-library_3-3.8.2.jar, /Users/xxx/.sbt/boot/scala-3.8.2/lib/tasty-core_3-3.8.2.jar, /Users/xxx/.sbt/boot/scala-3.8.2/lib/scala-asm-9.9.0-scala-1.jar, /Users/xxx/.sbt/boot/scala-3.8.2/lib/scala3-compiler_3-3.8.2.jar, other jars:
at sbt.internal.inc.ScalaInstance$.slowActualVersion(ScalaInstance.scala:331)
at sbt.internal.inc.ScalaInstance$.sbt$internal$inc$ScalaInstance$$$actualVersion(ScalaInstance.scala:316)
at sbt.internal.inc.ScalaInstance.actualVersion$lzyINIT1$$anonfun$1(ScalaInstance.scala:132)
at scala.Option.getOrElse(Option.scala:203)
at sbt.internal.inc.ScalaInstance.actualVersion$lzyINIT1(ScalaInstance.scala:133)
at sbt.internal.inc.ScalaInstance.actualVersion(ScalaInstance.scala:129)
at sbt.internal.inc.AnalyzingCompiler.toString(AnalyzingCompiler.scala:390)
at java.base/java.lang.StringConcatHelper.stringOf(StringConcatHelper.java:453)
at xsbti.compile.Compilers.toString(Compilers.java:54)
Caused by: java.lang.ClassNotFoundException: scala.tools.nsc.Properties
at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:445)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:592)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:525)
at java.base/java.lang.Class.forName0(Native Method)
at java.base/java.lang.Class.forName(Class.java:467)
at sbt.internal.inc.ScalaInstance$.slowActualVersion(ScalaInstance.scala:324)
... 130 moreexpectation
Don't blow up.
Reactions are currently unavailable