Compiling my Scala project with JDK 17.
status:
the project once used sbt version 1.2.8 and scala 2.12.8, and targets JDK 11. it works fine. And recently, we wanted to upgrade the JDK to 17.
steps:
According to the page about JDK compatibility https://docs.scala-lang.org/overviews/jdk-compatibility/overview.html. The sbt version should be upgraded to 1.6.0. And the Scala version should be upgraded to 2.12.15.
1. Compile error with JDK17
If I do not make the changes to the sbt version and scala version, the compilation will fail with an error message:error: error while loading String, class file '/modules/java.base/java/lang/String.class' is broken
(class java.lang.NullPointerException/Cannot invoke "scala.tools.nsc.Global$Run.typerPhase()" because the return value of "scala.tools.nsc.Global.currentRun()" is null)
[error] java.io.IOError: java.lang.RuntimeException: /packages cannot be represented as URI
[error] at java.base/jdk.internal.jrtfs.JrtPath.toUri(JrtPath.java:175)
[error] at scala.tools.nsc.classpath.JrtClassPath.asURLs(DirectoryClassPath.scala:204)
[error] at scala.tools.nsc.classpath.AggregateClassPath.$anonfun$asURLs$1(AggregateClassPath.scala:55)
[error] at scala.collection.TraversableLike.$anonfun$flatMap$1(TraversableLike.scala:240)
[error] at scala.collection.Iterator.foreach(Iterator.scala:937)
[error] at scala.collection.Iterator.foreach$(Iterator.scala:937)
[error] at scala.collection.AbstractIterator.foreach(Iterator.scala:1425)
[error] at scala.collection.IterableLike.foreach(IterableLike.scala:70)
[error] at scala.collection.IterableLike.foreach$(IterableLike.scala:69)
[error] at scala.collection.AbstractIterable.foreach(Iterable.scala:54)
[error] at scala.collection.TraversableLike.flatMap(TraversableLike.scala:240)
[error] at scala.collection.TraversableLike.flatMap$(TraversableLike.scala:237)
[error] at scala.collection.AbstractTraversable.flatMap(Traversable.scala:104)
[error] at scala.tools.nsc.classpath.AggregateClassPath.asURLs(AggregateClassPath.scala:55)
[error] at scala.tools.nsc.typechecker.Macros.findMacroClassLoader(Macros.scala:66)
[error] at scala.tools.nsc.typechecker.Macros.findMacroClassLoader$(Macros.scala:65)
[error] at scala.tools.nsc.Global$$anon$1.findMacroClassLoader(Global.scala:469)
[error] at scala.reflect.macros.runtime.MacroRuntimes.$anonfun$defaultMacroClassloaderCache$2(MacroRuntimes.scala:56)
[error] at scala.reflect.internal.SymbolTable$perRunCaches$$anon$1.apply(SymbolTable.scala:457)
[error] at scala.reflect.macros.runtime.MacroRuntimes.defaultMacroClassloader(MacroRuntimes.scala:58)
[error] at scala.reflect.macros.runtime.MacroRuntimes.defaultMacroClassloader$(MacroRuntimes.scala:58)
[error] at scala.tools.nsc.Global$$anon$1.defaultMacroClassloader(Global.scala:469)
[error] at scala.reflect.macros.runtime.MacroRuntimes$MacroRuntimeResolver.resolveRuntime(MacroRuntimes.scala:76)
[error] at scala.reflect.macros.runtime.MacroRuntimes.$anonfun$standardMacroRuntime$3(MacroRuntimes.scala:38)
[error] at scala.collection.mutable.MapLike.getOrElseUpdate(MapLike.scala:206)
[error] at scala.collection.mutable.MapLike.getOrElseUpdate$(MapLike.scala:203)
[error] at scala.collection.mutable.AbstractMap.getOrElseUpdate(Map.scala:80)
[error] at scala.reflect.macros.runtime.MacroRuntimes.standardMacroRuntime(MacroRuntimes.scala:38)
[error] at scala.reflect.macros.runtime.MacroRuntimes.standardMacroRuntime$(MacroRuntimes.scala:31)
[error] at scala.tools.nsc.Global$$anon$1.standardMacroRuntime(Global.scala:469)
[error] at scala.tools.nsc.typechecker.AnalyzerPlugins$$anon$14.default(AnalyzerPlugins.scala:448)
[error] at scala.tools.nsc.typechecker.AnalyzerPlugins$$anon$14.default(AnalyzerPlugins.scala:445)
[error] at scala.tools.nsc.typechecker.AnalyzerPlugins.invoke(AnalyzerPlugins.scala:401)
[error] at scala.tools.nsc.typechecker.AnalyzerPlugins.pluginsMacroRuntime(AnalyzerPlugins.scala:445)
[error] at scala.tools.nsc.typechecker.AnalyzerPlugins.pluginsMacroRuntime$(AnalyzerPlugins.scala:445)
[error] at scala.tools.nsc.Global$$anon$1.pluginsMacroRuntime(Global.scala:469)
[error] at scala.reflect.macros.runtime.MacroRuntimes.macroRuntime(MacroRuntimes.scala:25)
[error] at scala.reflect.macros.runtime.MacroRuntimes.macroRuntime$(MacroRuntimes.scala:25)
[error] at scala.tools.nsc.Global$$anon$1.macroRuntime(Global.scala:469)
[error] at scala.tools.nsc.typechecker.Macros$MacroExpander.$anonfun$expand$1(Macros.scala:619)
[error] at scala.tools.nsc.Global.withInfoLevel(Global.scala:219)
[error] at scala.tools.nsc.typechecker.Macros$MacroExpander.expand(Macros.scala:613)
[error] at scala.tools.nsc.typechecker.Macros$MacroExpander.apply(Macros.scala:600)
[error] at scala.tools.nsc.typechecker.Macros.standardMacroExpand(Macros.scala:764)
[error] at scala.tools.nsc.typechecker.Macros.standardMacroExpand$(Macros.scala:762)
[error] at scala.tools.nsc.Global$$anon$1.standardMacroExpand(Global.scala:469)
[error] at scala.tools.nsc.typechecker.AnalyzerPlugins$$anon$12.default(AnalyzerPlugins.scala:432)
[error] at scala.tools.nsc.typechecker.AnalyzerPlugins$$anon$12.default(AnalyzerPlugins.scala:429)
[error] at scala.tools.nsc.typechecker.AnalyzerPlugins.invoke(AnalyzerPlugins.scala:401)
[error] at scala.tools.nsc.typechecker.AnalyzerPlugins.pluginsMacroExpand(AnalyzerPlugins.scala:429)
[error] at scala.tools.nsc.typechecker.AnalyzerPlugins.pluginsMacroExpand$(AnalyzerPlugins.scala:429)
[error] at scala.tools.nsc.Global$$anon$1.pluginsMacroExpand(Global.scala:469)
[error] at scala.tools.nsc.typechecker.Macros.macroExpand(Macros.scala:757)
[error] at scala.tools.nsc.typechecker.Macros.macroExpand$(Macros.scala:757)
[error] at scala.tools.nsc.Global$$anon$1.macroExpand(Global.scala:469)
[error] at scala.tools.nsc.typechecker.Typers$Typer.vanillaAdapt$1(Typers.scala:1163)
[error] at scala.tools.nsc.typechecker.Typers$Typer.adapt(Typers.scala:1223)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:5631)
[error] at scala.tools.nsc.typechecker.Typers$Typer.$anonfun$adapt$1(Typers.scala:881)
[error] at scala.tools.nsc.typechecker.Typers$Typer.adaptToImplicitMethod$1(Typers.scala:471)
[error] at scala.tools.nsc.typechecker.Typers$Typer.adapt(Typers.scala:1219)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:5631)
[error] at scala.tools.nsc.typechecker.Typers$Typer.$anonfun$typedArg$1(Typers.scala:3280)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typedArg(Typers.scala:471)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typedArgToPoly$1(Typers.scala:3670)
[error] at scala.tools.nsc.typechecker.Typers$Typer.$anonfun$doTypedApply$33(Typers.scala:3678)
[error] at scala.tools.nsc.typechecker.Typers$Typer.handlePolymorphicCall$1(Typers.scala:3678)
[error] at scala.tools.nsc.typechecker.Typers$Typer.doTypedApply(Typers.scala:3689)
[error] at scala.tools.nsc.typechecker.Typers$Typer.normalTypedApply$1(Typers.scala:4767)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typedApply$1(Typers.scala:4776)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typed1(Typers.scala:5571)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:5617)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typedIf$1(Typers.scala:5692)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typedOutsidePatternMode$1(Typers.scala:5547)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typed1(Typers.scala:5581)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:5617)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typedDefDef(Typers.scala:5833)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typed1(Typers.scala:5536)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:5617)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typedStat$1(Typers.scala:5681)
[error] at scala.tools.nsc.typechecker.Typers$Typer.$anonfun$typedStats$10(Typers.scala:3264)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typedStats(Typers.scala:3264)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typedTemplate(Typers.scala:1999)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typedModuleDef(Typers.scala:1868)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typed1(Typers.scala:5538)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:5617)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typedStat$1(Typers.scala:5681)
[error] at scala.tools.nsc.typechecker.Typers$Typer.$anonfun$typedStats$10(Typers.scala:3264)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typedStats(Typers.scala:3264)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typedPackageDef$1(Typers.scala:5247)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typed1(Typers.scala:5540)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:5617)
[error] at scala.tools.nsc.typechecker.Analyzer$typerFactory$TyperPhase.apply(Analyzer.scala:106)
[error] at scala.tools.nsc.Global$GlobalPhase.applyPhase(Global.scala:441)
[error] at scala.tools.nsc.typechecker.Analyzer$typerFactory$TyperPhase.run(Analyzer.scala:96)
[error] at sbt.compiler.Eval.$anonfun$compileAndLoad$1(Eval.scala:248)
[error] at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:12)
[error] at scala.reflect.internal.SymbolTable.enteringPhase(SymbolTable.scala:282)
[error] at sbt.compiler.Eval.compile$1(Eval.scala:248)
[error] at sbt.compiler.Eval.compileAndLoad(Eval.scala:253)
[error] at sbt.compiler.Eval.evalCommon(Eval.scala:218)
[error] at sbt.compiler.Eval.eval(Eval.scala:128)
[error] at sbt.internal.EvaluateConfigurations$.evaluateDslEntry(EvaluateConfigurations.scala:239)
[error] at sbt.internal.EvaluateConfigurations$.$anonfun$evaluateSbtFile$2(EvaluateConfigurations.scala:158)
[error] at scala.collection.TraversableLike.$anonfun$map$1(TraversableLike.scala:233)
[error] at scala.collection.immutable.List.foreach(List.scala:388)
[error] at scala.collection.TraversableLike.map(TraversableLike.scala:233)
[error] at scala.collection.TraversableLike.map$(TraversableLike.scala:226)
[error] at scala.collection.immutable.List.map(List.scala:294)
[error] at sbt.internal.EvaluateConfigurations$.evaluateSbtFile(EvaluateConfigurations.scala:156)
[error] at sbt.internal.Load$.loadSettingsFile$1(Load.scala:1136)
[error] at sbt.internal.Load$.$anonfun$discoverProjects$2(Load.scala:1144)
[error] at scala.collection.MapLike.getOrElse(MapLike.scala:127)
[error] at scala.collection.MapLike.getOrElse$(MapLike.scala:125)
[error] at scala.collection.AbstractMap.getOrElse(Map.scala:59)
[error] at sbt.internal.Load$.memoLoadSettingsFile$1(Load.scala:1143)
[error] at sbt.internal.Load$.$anonfun$discoverProjects$4(Load.scala:1151)
[error] at scala.collection.TraversableLike.$anonfun$map$1(TraversableLike.scala:233)
[error] at scala.collection.immutable.List.foreach(List.scala:388)
[error] at scala.collection.TraversableLike.map(TraversableLike.scala:233)
[error] at scala.collection.TraversableLike.map$(TraversableLike.scala:226)
[error] at scala.collection.immutable.List.map(List.scala:294)
[error] at sbt.internal.Load$.loadFiles$1(Load.scala:1151)
[error] at sbt.internal.Load$.discoverProjects(Load.scala:1165)
[error] at sbt.internal.Load$.discover$1(Load.scala:862)
[error] at sbt.internal.Load$.loadTransitive(Load.scala:937)
[error] at sbt.internal.Load$.loadProjects$1(Load.scala:726)
[error] at sbt.internal.Load$.$anonfun$loadUnit$11(Load.scala:729)
[error] at sbt.internal.Load$.timed(Load.scala:1395)
[error] at sbt.internal.Load$.$anonfun$loadUnit$1(Load.scala:729)
[error] at sbt.internal.Load$.timed(Load.scala:1395)
[error] at sbt.internal.Load$.loadUnit(Load.scala:688)
[error] at sbt.internal.Load$.$anonfun$builtinLoader$4(Load.scala:484)
[error] at sbt.internal.BuildLoader$.$anonfun$componentLoader$5(BuildLoader.scala:176)
[error] at sbt.internal.BuildLoader.apply(BuildLoader.scala:241)
[error] at sbt.internal.Load$.loadURI$1(Load.scala:546)
[error] at sbt.internal.Load$.loadAll(Load.scala:562)
[error] at sbt.internal.Load$.loadURI(Load.scala:492)
[error] at sbt.internal.Load$.load(Load.scala:471)
[error] at sbt.internal.Load$.$anonfun$apply$1(Load.scala:251)
[error] at sbt.internal.Load$.timed(Load.scala:1395)
[error] at sbt.internal.Load$.apply(Load.scala:251)
[error] at sbt.internal.GlobalPlugin$.build(GlobalPlugin.scala:59)
[error] at sbt.internal.GlobalPlugin$.load(GlobalPlugin.scala:64)
[error] at sbt.internal.Load$.loadGlobal(Load.scala:193)
[error] at sbt.internal.Load$.defaultWithGlobal(Load.scala:150)
[error] at sbt.internal.Load$.$anonfun$defaultLoad$1(Load.scala:64)
[error] at sbt.internal.Load$.timed(Load.scala:1395)
[error] at sbt.internal.Load$.defaultLoad(Load.scala:60)
[error] at sbt.BuiltinCommands$.liftedTree1$1(Main.scala:829)
[error] at sbt.BuiltinCommands$.doLoadProject(Main.scala:829)
[error] at sbt.BuiltinCommands$.$anonfun$loadProjectImpl$2(Main.scala:800)
[error] at sbt.Command$.$anonfun$applyEffect$4(Command.scala:142)
[error] at sbt.Command$.$anonfun$applyEffect$2(Command.scala:137)
[error] at sbt.Command$.process(Command.scala:181)
[error] at sbt.MainLoop$.processCommand(MainLoop.scala:151)
[error] at sbt.MainLoop$.$anonfun$next$2(MainLoop.scala:139)
[error] at sbt.State$$anon$1.runCmd$1(State.scala:246)
[error] at sbt.State$$anon$1.process(State.scala:250)
[error] at sbt.MainLoop$.$anonfun$next$1(MainLoop.scala:139)
[error] at sbt.internal.util.ErrorHandling$.wideConvert(ErrorHandling.scala:16)
[error] at sbt.MainLoop$.next(MainLoop.scala:139)
[error] at sbt.MainLoop$.run(MainLoop.scala:132)
[error] at sbt.MainLoop$.$anonfun$runWithNewLog$1(MainLoop.scala:110)
[error] at sbt.io.Using.apply(Using.scala:22)
[error] at sbt.MainLoop$.runWithNewLog(MainLoop.scala:104)
[error] at sbt.MainLoop$.runAndClearLast(MainLoop.scala:59)
[error] at sbt.MainLoop$.runLoggedLoop(MainLoop.scala:44)
[error] at sbt.MainLoop$.runLogged(MainLoop.scala:35)
[error] at sbt.StandardMain$.runManaged(Main.scala:138)
[error] at sbt.xMain.run(Main.scala:89)
[error] at xsbt.boot.Launch$.$anonfun$run$1(Launch.scala:149)
[error] at xsbt.boot.Launch$.withContextLoader(Launch.scala:176)
[error] at xsbt.boot.Launch$.run(Launch.scala:149)
[error] at xsbt.boot.Launch$.$anonfun$apply$1(Launch.scala:44)
[error] at xsbt.boot.Launch$.launch(Launch.scala:159)
[error] at xsbt.boot.Launch$.apply(Launch.scala:44)
[error] at xsbt.boot.Launch$.apply(Launch.scala:21)
[error] at xsbt.boot.Boot$.runImpl(Boot.scala:78)
[error] at xsbt.boot.Boot$.run(Boot.scala:73)
[error] at xsbt.boot.Boot$.main(Boot.scala:21)
[error] at xsbt.boot.Boot.main(Boot.scala)
[error] Caused by: java.lang.RuntimeException: /packages cannot be represented as URI
[error] at java.base/jdk.internal.jrtfs.JrtPath.toUri(JrtPath.java:175)
[error] at scala.tools.nsc.classpath.JrtClassPath.asURLs(DirectoryClassPath.scala:204)
[error] at scala.tools.nsc.classpath.AggregateClassPath.$anonfun$asURLs$1(AggregateClassPath.scala:55)
[error] at scala.collection.TraversableLike.$anonfun$flatMap$1(TraversableLike.scala:240)
[error] at scala.collection.Iterator.foreach(Iterator.scala:937)
[error] at scala.collection.Iterator.foreach$(Iterator.scala:937)
[error] at scala.collection.AbstractIterator.foreach(Iterator.scala:1425)
[error] at scala.collection.IterableLike.foreach(IterableLike.scala:70)
[error] at scala.collection.IterableLike.foreach$(IterableLike.scala:69)
[error] at scala.collection.AbstractIterable.foreach(Iterable.scala:54)
[error] at scala.collection.TraversableLike.flatMap(TraversableLike.scala:240)
[error] at scala.collection.TraversableLike.flatMap$(TraversableLike.scala:237)
[error] at scala.collection.AbstractTraversable.flatMap(Traversable.scala:104)
[error] at scala.tools.nsc.classpath.AggregateClassPath.asURLs(AggregateClassPath.scala:55)
[error] at scala.tools.nsc.typechecker.Macros.findMacroClassLoader(Macros.scala:66)
[error] at scala.tools.nsc.typechecker.Macros.findMacroClassLoader$(Macros.scala:65)
[error] at scala.tools.nsc.Global$$anon$1.findMacroClassLoader(Global.scala:469)
[error] at scala.reflect.macros.runtime.MacroRuntimes.$anonfun$defaultMacroClassloaderCache$2(MacroRuntimes.scala:56)
[error] at scala.reflect.internal.SymbolTable$perRunCaches$$anon$1.apply(SymbolTable.scala:457)
[error] at scala.reflect.macros.runtime.MacroRuntimes.defaultMacroClassloader(MacroRuntimes.scala:58)
[error] at scala.reflect.macros.runtime.MacroRuntimes.defaultMacroClassloader$(MacroRuntimes.scala:58)
[error] at scala.tools.nsc.Global$$anon$1.defaultMacroClassloader(Global.scala:469)
[error] at scala.reflect.macros.runtime.MacroRuntimes$MacroRuntimeResolver.resolveRuntime(MacroRuntimes.scala:76)
[error] at scala.reflect.macros.runtime.MacroRuntimes.$anonfun$standardMacroRuntime$3(MacroRuntimes.scala:38)
[error] at scala.collection.mutable.MapLike.getOrElseUpdate(MapLike.scala:206)
[error] at scala.collection.mutable.MapLike.getOrElseUpdate$(MapLike.scala:203)
[error] at scala.collection.mutable.AbstractMap.getOrElseUpdate(Map.scala:80)
[error] at scala.reflect.macros.runtime.MacroRuntimes.standardMacroRuntime(MacroRuntimes.scala:38)
[error] at scala.reflect.macros.runtime.MacroRuntimes.standardMacroRuntime$(MacroRuntimes.scala:31)
[error] at scala.tools.nsc.Global$$anon$1.standardMacroRuntime(Global.scala:469)
[error] at scala.tools.nsc.typechecker.AnalyzerPlugins$$anon$14.default(AnalyzerPlugins.scala:448)
[error] at scala.tools.nsc.typechecker.AnalyzerPlugins$$anon$14.default(AnalyzerPlugins.scala:445)
[error] at scala.tools.nsc.typechecker.AnalyzerPlugins.invoke(AnalyzerPlugins.scala:401)
[error] at scala.tools.nsc.typechecker.AnalyzerPlugins.pluginsMacroRuntime(AnalyzerPlugins.scala:445)
[error] at scala.tools.nsc.typechecker.AnalyzerPlugins.pluginsMacroRuntime$(AnalyzerPlugins.scala:445)
[error] at scala.tools.nsc.Global$$anon$1.pluginsMacroRuntime(Global.scala:469)
[error] at scala.reflect.macros.runtime.MacroRuntimes.macroRuntime(MacroRuntimes.scala:25)
[error] at scala.reflect.macros.runtime.MacroRuntimes.macroRuntime$(MacroRuntimes.scala:25)
[error] at scala.tools.nsc.Global$$anon$1.macroRuntime(Global.scala:469)
[error] at scala.tools.nsc.typechecker.Macros$MacroExpander.$anonfun$expand$1(Macros.scala:619)
[error] at scala.tools.nsc.Global.withInfoLevel(Global.scala:219)
[error] at scala.tools.nsc.typechecker.Macros$MacroExpander.expand(Macros.scala:613)
[error] at scala.tools.nsc.typechecker.Macros$MacroExpander.apply(Macros.scala:600)
[error] at scala.tools.nsc.typechecker.Macros.standardMacroExpand(Macros.scala:764)
[error] at scala.tools.nsc.typechecker.Macros.standardMacroExpand$(Macros.scala:762)
[error] at scala.tools.nsc.Global$$anon$1.standardMacroExpand(Global.scala:469)
[error] at scala.tools.nsc.typechecker.AnalyzerPlugins$$anon$12.default(AnalyzerPlugins.scala:432)
[error] at scala.tools.nsc.typechecker.AnalyzerPlugins$$anon$12.default(AnalyzerPlugins.scala:429)
[error] at scala.tools.nsc.typechecker.AnalyzerPlugins.invoke(AnalyzerPlugins.scala:401)
[error] at scala.tools.nsc.typechecker.AnalyzerPlugins.pluginsMacroExpand(AnalyzerPlugins.scala:429)
[error] at scala.tools.nsc.typechecker.AnalyzerPlugins.pluginsMacroExpand$(AnalyzerPlugins.scala:429)
[error] at scala.tools.nsc.Global$$anon$1.pluginsMacroExpand(Global.scala:469)
[error] at scala.tools.nsc.typechecker.Macros.macroExpand(Macros.scala:757)
[error] at scala.tools.nsc.typechecker.Macros.macroExpand$(Macros.scala:757)
[error] at scala.tools.nsc.Global$$anon$1.macroExpand(Global.scala:469)
[error] at scala.tools.nsc.typechecker.Typers$Typer.vanillaAdapt$1(Typers.scala:1163)
[error] at scala.tools.nsc.typechecker.Typers$Typer.adapt(Typers.scala:1223)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:5631)
[error] at scala.tools.nsc.typechecker.Typers$Typer.$anonfun$adapt$1(Typers.scala:881)
[error] at scala.tools.nsc.typechecker.Typers$Typer.adaptToImplicitMethod$1(Typers.scala:471)
[error] at scala.tools.nsc.typechecker.Typers$Typer.adapt(Typers.scala:1219)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:5631)
[error] at scala.tools.nsc.typechecker.Typers$Typer.$anonfun$typedArg$1(Typers.scala:3280)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typedArg(Typers.scala:471)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typedArgToPoly$1(Typers.scala:3670)
[error] at scala.tools.nsc.typechecker.Typers$Typer.$anonfun$doTypedApply$33(Typers.scala:3678)
[error] at scala.tools.nsc.typechecker.Typers$Typer.handlePolymorphicCall$1(Typers.scala:3678)
[error] at scala.tools.nsc.typechecker.Typers$Typer.doTypedApply(Typers.scala:3689)
[error] at scala.tools.nsc.typechecker.Typers$Typer.normalTypedApply$1(Typers.scala:4767)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typedApply$1(Typers.scala:4776)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typed1(Typers.scala:5571)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:5617)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typedIf$1(Typers.scala:5692)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typedOutsidePatternMode$1(Typers.scala:5547)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typed1(Typers.scala:5581)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:5617)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typedDefDef(Typers.scala:5833)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typed1(Typers.scala:5536)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:5617)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typedStat$1(Typers.scala:5681)
[error] at scala.tools.nsc.typechecker.Typers$Typer.$anonfun$typedStats$10(Typers.scala:3264)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typedStats(Typers.scala:3264)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typedTemplate(Typers.scala:1999)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typedModuleDef(Typers.scala:1868)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typed1(Typers.scala:5538)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:5617)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typedStat$1(Typers.scala:5681)
[error] at scala.tools.nsc.typechecker.Typers$Typer.$anonfun$typedStats$10(Typers.scala:3264)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typedStats(Typers.scala:3264)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typedPackageDef$1(Typers.scala:5247)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typed1(Typers.scala:5540)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:5617)
[error] at scala.tools.nsc.typechecker.Analyzer$typerFactory$TyperPhase.apply(Analyzer.scala:106)
[error] at scala.tools.nsc.Global$GlobalPhase.applyPhase(Global.scala:441)
[error] at scala.tools.nsc.typechecker.Analyzer$typerFactory$TyperPhase.run(Analyzer.scala:96)
[error] at sbt.compiler.Eval.$anonfun$compileAndLoad$1(Eval.scala:248)
[error] at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:12)
[error] at scala.reflect.internal.SymbolTable.enteringPhase(SymbolTable.scala:282)
[error] at sbt.compiler.Eval.compile$1(Eval.scala:248)
[error] at sbt.compiler.Eval.compileAndLoad(Eval.scala:253)
[error] at sbt.compiler.Eval.evalCommon(Eval.scala:218)
[error] at sbt.compiler.Eval.eval(Eval.scala:128)
[error] at sbt.internal.EvaluateConfigurations$.evaluateDslEntry(EvaluateConfigurations.scala:239)
[error] at sbt.internal.EvaluateConfigurations$.$anonfun$evaluateSbtFile$2(EvaluateConfigurations.scala:158)
[error] at scala.collection.TraversableLike.$anonfun$map$1(TraversableLike.scala:233)
[error] at scala.collection.immutable.List.foreach(List.scala:388)
[error] at scala.collection.TraversableLike.map(TraversableLike.scala:233)
[error] at scala.collection.TraversableLike.map$(TraversableLike.scala:226)
[error] at scala.collection.immutable.List.map(List.scala:294)
[error] at sbt.internal.EvaluateConfigurations$.evaluateSbtFile(EvaluateConfigurations.scala:156)
[error] at sbt.internal.Load$.loadSettingsFile$1(Load.scala:1136)
[error] at sbt.internal.Load$.$anonfun$discoverProjects$2(Load.scala:1144)
[error] at scala.collection.MapLike.getOrElse(MapLike.scala:127)
[error] at scala.collection.MapLike.getOrElse$(MapLike.scala:125)
[error] at scala.collection.AbstractMap.getOrElse(Map.scala:59)
[error] at sbt.internal.Load$.memoLoadSettingsFile$1(Load.scala:1143)
[error] at sbt.internal.Load$.$anonfun$discoverProjects$4(Load.scala:1151)
[error] at scala.collection.TraversableLike.$anonfun$map$1(TraversableLike.scala:233)
[error] at scala.collection.immutable.List.foreach(List.scala:388)
[error] at scala.collection.TraversableLike.map(TraversableLike.scala:233)
[error] at scala.collection.TraversableLike.map$(TraversableLike.scala:226)
[error] at scala.collection.immutable.List.map(List.scala:294)
[error] at sbt.internal.Load$.loadFiles$1(Load.scala:1151)
[error] at sbt.internal.Load$.discoverProjects(Load.scala:1165)
[error] at sbt.internal.Load$.discover$1(Load.scala:862)
[error] at sbt.internal.Load$.loadTransitive(Load.scala:937)
[error] at sbt.internal.Load$.loadProjects$1(Load.scala:726)
[error] at sbt.internal.Load$.$anonfun$loadUnit$11(Load.scala:729)
[error] at sbt.internal.Load$.timed(Load.scala:1395)
[error] at sbt.internal.Load$.$anonfun$loadUnit$1(Load.scala:729)
[error] at sbt.internal.Load$.timed(Load.scala:1395)
[error] at sbt.internal.Load$.loadUnit(Load.scala:688)
[error] at sbt.internal.Load$.$anonfun$builtinLoader$4(Load.scala:484)
[error] at sbt.internal.BuildLoader$.$anonfun$componentLoader$5(BuildLoader.scala:176)
[error] at sbt.internal.BuildLoader.apply(BuildLoader.scala:241)
[error] at sbt.internal.Load$.loadURI$1(Load.scala:546)
[error] at sbt.internal.Load$.loadAll(Load.scala:562)
[error] at sbt.internal.Load$.loadURI(Load.scala:492)
[error] at sbt.internal.Load$.load(Load.scala:471)
[error] at sbt.internal.Load$.$anonfun$apply$1(Load.scala:251)
[error] at sbt.internal.Load$.timed(Load.scala:1395)
[error] at sbt.internal.Load$.apply(Load.scala:251)
[error] at sbt.internal.GlobalPlugin$.build(GlobalPlugin.scala:59)
[error] at sbt.MainLoop$.$anonfun$runWithNewLog$1(MainLoop.scala:110)
[error] at sbt.io.Using.apply(Using.scala:22)
[error] at sbt.MainLoop$.runWithNewLog(MainLoop.scala:104)
[error] at sbt.MainLoop$.runAndClearLast(MainLoop.scala:59)
[error] at sbt.MainLoop$.runLoggedLoop(MainLoop.scala:44)
[error] at sbt.MainLoop$.runLogged(MainLoop.scala:35)
[error] at sbt.StandardMain$.runManaged(Main.scala:138)
[error] at sbt.xMain.run(Main.scala:89)
[error] at xsbt.boot.Launch$.$anonfun$run$1(Launch.scala:149)
[error] at xsbt.boot.Launch$.withContextLoader(Launch.scala:176)
[error] at xsbt.boot.Launch$.run(Launch.scala:149)
[error] at xsbt.boot.Launch$.$anonfun$apply$1(Launch.scala:44)
[error] at xsbt.boot.Launch$.launch(Launch.scala:159)
[error] at xsbt.boot.Launch$.apply(Launch.scala:44)
[error] at xsbt.boot.Launch$.apply(Launch.scala:21)
[error] at xsbt.boot.Boot$.runImpl(Boot.scala:78)
[error] at xsbt.boot.Boot$.run(Boot.scala:73)
[error] at xsbt.boot.Boot$.main(Boot.scala:21)
[error] at xsbt.boot.Boot.main(Boot.scala)
after made changes to sbt version and Scala version, the compile error is gone.
in build.properties, to define sbt.version = 1.6.0, and in build.sbt, to define scalaVersion := "2.12.15"
2. SBT Test error
apart from the compile error, you may encounter the following error when you run the test, by sbt test.
[error] java.io.IOException: Error while instrumenting Group.class.
[error] at org.jacoco.core.instr.Instrumenter.instrumentError(Instrumenter.java:159)
[error] at org.jacoco.core.instr.Instrumenter.instrument(Instrumenter.java:109)
[error] at org.jacoco.core.instr.Instrumenter.instrument(Instrumenter.java:134)
[error] at com.github.sbt.jacoco.data.InstrumentationUtils$.$anonfun$instrumentClasses$11(InstrumentationUtils.scala:64)
[error] at com.github.sbt.jacoco.data.InstrumentationUtils$.$anonfun$instrumentClasses$11$adapted(InstrumentationUtils.scala:61)
[error] at resource.AbstractManagedResource.$anonfun$acquireFor$1(AbstractManagedResource.scala:88)
[error] at scala.util.control.Exception$Catch.$anonfun$either$1(Exception.scala:252)
[error] at scala.util.control.Exception$Catch.apply(Exception.scala:228)
[error] at scala.util.control.Exception$Catch.either(Exception.scala:252)
[error] at resource.AbstractManagedResource.acquireFor(AbstractManagedResource.scala:88)
[error] at resource.ManagedResourceOperations.apply(ManagedResourceOperations.scala:26)
[error] at resource.ManagedResourceOperations.apply$(ManagedResourceOperations.scala:26)
[error] at resource.AbstractManagedResource.apply(AbstractManagedResource.scala:50)
[error] at resource.ManagedResourceOperations.acquireAndGet(ManagedResourceOperations.scala:25)
[error] at resource.ManagedResourceOperations.acquireAndGet$(ManagedResourceOperations.scala:25)
[error] at resource.AbstractManagedResource.acquireAndGet(AbstractManagedResource.scala:50)
[error] at resource.ManagedResourceOperations.foreach(ManagedResourceOperations.scala:53)
[error] at resource.ManagedResourceOperations.foreach$(ManagedResourceOperations.scala:53)
[error] at resource.AbstractManagedResource.foreach(AbstractManagedResource.scala:50)
[error] at com.github.sbt.jacoco.data.InstrumentationUtils$.$anonfun$instrumentClasses$9(InstrumentationUtils.scala:61)
[error] at com.github.sbt.jacoco.data.InstrumentationUtils$.$anonfun$instrumentClasses$9$adapted(InstrumentationUtils.scala:60)
[error] at scala.collection.mutable.ResizableArray.foreach(ResizableArray.scala:62)
[error] at scala.collection.mutable.ResizableArray.foreach$(ResizableArray.scala:55)
[error] at scala.collection.mutable.ArrayBuffer.foreach(ArrayBuffer.scala:49)
[error] at com.github.sbt.jacoco.data.InstrumentationUtils$.instrumentClasses(InstrumentationUtils.scala:60)
[error] at com.github.sbt.jacoco.BaseJacocoPlugin.$anonfun$taskValues$9(BaseJacocoPlugin.scala:105)
[error] at scala.Function1.$anonfun$compose$1(Function1.scala:49)
[error] at sbt.internal.util.$tilde$greater.$anonfun$$u2219$1(TypeFunctions.scala:63)
[error] at sbt.std.Transform$$anon$4.work(Transform.scala:69)
[error] at sbt.Execute.$anonfun$submit$2(Execute.scala:283)
[error] at sbt.internal.util.ErrorHandling$.wideConvert(ErrorHandling.scala:24)
[error] at sbt.Execute.work(Execute.scala:292)
[error] at sbt.Execute.$anonfun$submit$1(Execute.scala:283)
[error] at sbt.ConcurrentRestrictions$$anon$4.$anonfun$submitValid$1(ConcurrentRestrictions.scala:265)
[error] at sbt.CompletionService$$anon$2.call(CompletionService.scala:65)
[error] at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
[error] at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
[error] at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
[error] at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
[error] at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
[error] at java.base/java.lang.Thread.run(Thread.java:840)
[error] Caused by: java.lang.IllegalArgumentException: Unsupported class file major version 61
[error] at org.objectweb.asm.ClassReader.<init>(ClassReader.java:195)
[error] at org.objectweb.asm.ClassReader.<init>(ClassReader.java:176)
[error] at org.objectweb.asm.ClassReader.<init>(ClassReader.java:162)
[error] at org.jacoco.core.internal.instr.InstrSupport.classReaderFor(InstrSupport.java:280)
[error] at org.jacoco.core.instr.Instrumenter.instrument(Instrumenter.java:75)
[error] at org.jacoco.core.instr.Instrumenter.instrument(Instrumenter.java:107)
[error] at org.jacoco.core.instr.Instrumenter.instrument(Instrumenter.java:134)
[error] at com.github.sbt.jacoco.data.InstrumentationUtils$.$anonfun$instrumentClasses$11(InstrumentationUtils.scala:64)
[error] at com.github.sbt.jacoco.data.InstrumentationUtils$.$anonfun$instrumentClasses$11$adapted(InstrumentationUtils.scala:61)
[error] at resource.AbstractManagedResource.$anonfun$acquireFor$1(AbstractManagedResource.scala:88)
[error] at scala.util.control.Exception$Catch.$anonfun$either$1(Exception.scala:252)
[error] at scala.util.control.Exception$Catch.apply(Exception.scala:228)
[error] at scala.util.control.Exception$Catch.either(Exception.scala:252)
[error] at resource.AbstractManagedResource.acquireFor(AbstractManagedResource.scala:88)
[error] at resource.ManagedResourceOperations.apply(ManagedResourceOperations.scala:26)
[error] at resource.ManagedResourceOperations.apply$(ManagedResourceOperations.scala:26)
[error] at resource.AbstractManagedResource.apply(AbstractManagedResource.scala:50)
[error] at resource.ManagedResourceOperations.acquireAndGet(ManagedResourceOperations.scala:25)
[error] at resource.ManagedResourceOperations.acquireAndGet$(ManagedResourceOperations.scala:25)
[error] at resource.AbstractManagedResource.acquireAndGet(AbstractManagedResource.scala:50)
[error] at resource.ManagedResourceOperations.foreach(ManagedResourceOperations.scala:53)
[error] at resource.ManagedResourceOperations.foreach$(ManagedResourceOperations.scala:53)
[error] at resource.AbstractManagedResource.foreach(AbstractManagedResource.scala:50)
[error] at com.github.sbt.jacoco.data.InstrumentationUtils$.$anonfun$instrumentClasses$9(InstrumentationUtils.scala:61)
[error] at com.github.sbt.jacoco.data.InstrumentationUtils$.$anonfun$instrumentClasses$9$adapted(InstrumentationUtils.scala:60)
[error] at scala.collection.mutable.ResizableArray.foreach(ResizableArray.scala:62)
[error] at scala.collection.mutable.ResizableArray.foreach$(ResizableArray.scala:55)
[error] at scala.collection.mutable.ArrayBuffer.foreach(ArrayBuffer.scala:49)
[error] at com.github.sbt.jacoco.data.InstrumentationUtils$.instrumentClasses(InstrumentationUtils.scala:60)
[error] at com.github.sbt.jacoco.BaseJacocoPlugin.$anonfun$taskValues$9(BaseJacocoPlugin.scala:105)
[error] at scala.Function1.$anonfun$compose$1(Function1.scala:49)
[error] at sbt.internal.util.$tilde$greater.$anonfun$$u2219$1(TypeFunctions.scala:63)
[error] at sbt.std.Transform$$anon$4.work(Transform.scala:69)
[error] at sbt.Execute.$anonfun$submit$2(Execute.scala:283)
[error] at sbt.internal.util.ErrorHandling$.wideConvert(ErrorHandling.scala:24)
[error] at sbt.Execute.work(Execute.scala:292)
[error] at sbt.Execute.$anonfun$submit$1(Execute.scala:283)
[error] at sbt.ConcurrentRestrictions$$anon$4.$anonfun$submitValid$1(ConcurrentRestrictions.scala:265)
[error] at sbt.CompletionService$$anon$2.call(CompletionService.scala:65)
[error] at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
[error] at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
[error] at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
[error] at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
[error] at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
[error] at java.base/java.lang.Thread.run(Thread.java:840)
[error] java.io.IOException: Error while instrumenting <xxx>.class.
[error] at org.jacoco.core.instr.Instrumenter.instrumentError(Instrumenter.java:159)
[error] at org.jacoco.core.instr.Instrumenter.instrument(Instrumenter.java:109)
[error] at org.jacoco.core.instr.Instrumenter.instrument(Instrumenter.java:134)
[error] at com.github.sbt.jacoco.data.InstrumentationUtils$.$anonfun$instrumentClasses$11(InstrumentationUtils.scala:64)
[error] at com.github.sbt.jacoco.data.InstrumentationUtils$.$anonfun$instrumentClasses$11$adapted(InstrumentationUtils.scala:61)
[error] at resource.AbstractManagedResource.$anonfun$acquireFor$1(AbstractManagedResource.scala:88)
[error] at scala.util.control.Exception$Catch.$anonfun$either$1(Exception.scala:252)
[error] at scala.util.control.Exception$Catch.apply(Exception.scala:228)
[error] at scala.util.control.Exception$Catch.either(Exception.scala:252)
[error] at resource.AbstractManagedResource.acquireFor(AbstractManagedResource.scala:88)
[error] at resource.ManagedResourceOperations.apply(ManagedResourceOperations.scala:26)
[error] at resource.ManagedResourceOperations.apply$(ManagedResourceOperations.scala:26)
[error] at resource.AbstractManagedResource.apply(AbstractManagedResource.scala:50)
[error] at resource.ManagedResourceOperations.acquireAndGet(ManagedResourceOperations.scala:25)
[error] at resource.ManagedResourceOperations.acquireAndGet$(ManagedResourceOperations.scala:25)
[error] at resource.AbstractManagedResource.acquireAndGet(AbstractManagedResource.scala:50)
[error] at resource.ManagedResourceOperations.foreach(ManagedResourceOperations.scala:53)
[error] at resource.ManagedResourceOperations.foreach$(ManagedResourceOperations.scala:53)
[error] at resource.AbstractManagedResource.foreach(AbstractManagedResource.scala:50)
[error] at com.github.sbt.jacoco.data.InstrumentationUtils$.$anonfun$instrumentClasses$9(InstrumentationUtils.scala:61)
[error] at com.github.sbt.jacoco.data.InstrumentationUtils$.$anonfun$instrumentClasses$9$adapted(InstrumentationUtils.scala:60)
[error] at scala.collection.mutable.ResizableArray.foreach(ResizableArray.scala:62)
[error] at scala.collection.mutable.ResizableArray.foreach$(ResizableArray.scala:55)
[error] at scala.collection.mutable.ArrayBuffer.foreach(ArrayBuffer.scala:49)
[error] at com.github.sbt.jacoco.data.InstrumentationUtils$.instrumentClasses(InstrumentationUtils.scala:60)
[error] at com.github.sbt.jacoco.BaseJacocoPlugin.$anonfun$taskValues$9(BaseJacocoPlugin.scala:105)
[error] at scala.Function1.$anonfun$compose$1(Function1.scala:49)
[error] at sbt.internal.util.$tilde$greater.$anonfun$$u2219$1(TypeFunctions.scala:63)
[error] at sbt.std.Transform$$anon$4.work(Transform.scala:69)
[error] at sbt.Execute.$anonfun$submit$2(Execute.scala:283)
[error] at sbt.internal.util.ErrorHandling$.wideConvert(ErrorHandling.scala:24)
[error] at sbt.Execute.work(Execute.scala:292)
[error] at sbt.Execute.$anonfun$submit$1(Execute.scala:283)
[error] at sbt.ConcurrentRestrictions$$anon$4.$anonfun$submitValid$1(ConcurrentRestrictions.scala:265)
[error] at sbt.CompletionService$$anon$2.call(CompletionService.scala:65)
[error] at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
[error] at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
[error] at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
[error] at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
[error] at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
[error] at java.base/java.lang.Thread.run(Thread.java:840)
[error] Caused by: java.lang.IllegalArgumentException: Unsupported class file major version 61
[error] at org.objectweb.asm.ClassReader.<init>(ClassReader.java:195)
[error] at org.objectweb.asm.ClassReader.<init>(ClassReader.java:176)
[error] at org.objectweb.asm.ClassReader.<init>(ClassReader.java:162)
[error] at org.jacoco.core.internal.instr.InstrSupport.classReaderFor(InstrSupport.java:280)
[error] at org.jacoco.core.instr.Instrumenter.instrument(Instrumenter.java:75)
[error] at org.jacoco.core.instr.Instrumenter.instrument(Instrumenter.java:107)
[error] at org.jacoco.core.instr.Instrumenter.instrument(Instrumenter.java:134)
[error] at com.github.sbt.jacoco.data.InstrumentationUtils$.$anonfun$instrumentClasses$11(InstrumentationUtils.scala:64)
[error] at com.github.sbt.jacoco.data.InstrumentationUtils$.$anonfun$instrumentClasses$11$adapted(InstrumentationUtils.scala:61)
[error] at resource.AbstractManagedResource.$anonfun$acquireFor$1(AbstractManagedResource.scala:88)
[error] at scala.util.control.Exception$Catch.$anonfun$either$1(Exception.scala:252)
[error] at scala.util.control.Exception$Catch.apply(Exception.scala:228)
[error] at scala.util.control.Exception$Catch.either(Exception.scala:252)
[error] at resource.AbstractManagedResource.acquireFor(AbstractManagedResource.scala:88)
[error] at resource.ManagedResourceOperations.apply(ManagedResourceOperations.scala:26)
[error] at resource.ManagedResourceOperations.apply$(ManagedResourceOperations.scala:26)
[error] at resource.AbstractManagedResource.apply(AbstractManagedResource.scala:50)
[error] at resource.ManagedResourceOperations.acquireAndGet(ManagedResourceOperations.scala:25)
[error] at resource.ManagedResourceOperations.acquireAndGet$(ManagedResourceOperations.scala:25)
[error] at resource.AbstractManagedResource.acquireAndGet(AbstractManagedResource.scala:50)
[error] at resource.ManagedResourceOperations.foreach(ManagedResourceOperations.scala:53)
[error] at resource.ManagedResourceOperations.foreach$(ManagedResourceOperations.scala:53)
[error] at resource.AbstractManagedResource.foreach(AbstractManagedResource.scala:50)
[error] at com.github.sbt.jacoco.data.InstrumentationUtils$.$anonfun$instrumentClasses$9(InstrumentationUtils.scala:61)
[error] at com.github.sbt.jacoco.data.InstrumentationUtils$.$anonfun$instrumentClasses$9$adapted(InstrumentationUtils.scala:60)
[error] at scala.collection.mutable.ResizableArray.foreach(ResizableArray.scala:62)
[error] at scala.collection.mutable.ResizableArray.foreach$(ResizableArray.scala:55)
[error] at scala.collection.mutable.ArrayBuffer.foreach(ArrayBuffer.scala:49)
[error] at com.github.sbt.jacoco.data.InstrumentationUtils$.instrumentClasses(InstrumentationUtils.scala:60)
[error] at com.github.sbt.jacoco.BaseJacocoPlugin.$anonfun$taskValues$9(BaseJacocoPlugin.scala:105)
[error] at scala.Function1.$anonfun$compose$1(Function1.scala:49)
[error] at sbt.internal.util.$tilde$greater.$anonfun$$u2219$1(TypeFunctions.scala:63)
[error] at sbt.std.Transform$$anon$4.work(Transform.scala:69)
[error] at sbt.Execute.$anonfun$submit$2(Execute.scala:283)
[error] at sbt.internal.util.ErrorHandling$.wideConvert(ErrorHandling.scala:24)
[error] at sbt.Execute.work(Execute.scala:292)
[error] at sbt.Execute.$anonfun$submit$1(Execute.scala:283)
[error] at sbt.ConcurrentRestrictions$$anon$4.$anonfun$submitValid$1(ConcurrentRestrictions.scala:265)
[error] at sbt.CompletionService$$anon$2.call(CompletionService.scala:65)
[error] at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
[error] at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
[error] at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
[error] at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
[error] at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
[error] at java.base/java.lang.Thread.run(Thread.java:840)
[error] java.io.IOException: Error while instrumenting <xxx>.class.
[error] at org.jacoco.core.instr.Instrumenter.instrumentError(Instrumenter.java:159)
[error] at org.jacoco.core.instr.Instrumenter.instrument(Instrumenter.java:109)
[error] at org.jacoco.core.instr.Instrumenter.instrument(Instrumenter.java:134)
[error] at com.github.sbt.jacoco.data.InstrumentationUtils$.$anonfun$instrumentClasses$11(InstrumentationUtils.scala:64)
[error] at com.github.sbt.jacoco.data.InstrumentationUtils$.$anonfun$instrumentClasses$11$adapted(InstrumentationUtils.scala:61)
[error] at resource.AbstractManagedResource.$anonfun$acquireFor$1(AbstractManagedResource.scala:88)
[error] at scala.util.control.Exception$Catch.$anonfun$either$1(Exception.scala:252)
[error] at scala.util.control.Exception$Catch.apply(Exception.scala:228)
[error] at scala.util.control.Exception$Catch.either(Exception.scala:252)
[error] at resource.AbstractManagedResource.acquireFor(AbstractManagedResource.scala:88)
[error] at resource.ManagedResourceOperations.apply(ManagedResourceOperations.scala:26)
[error] at resource.ManagedResourceOperations.apply$(ManagedResourceOperations.scala:26)
[error] at resource.AbstractManagedResource.apply(AbstractManagedResource.scala:50)
[error] at resource.ManagedResourceOperations.acquireAndGet(ManagedResourceOperations.scala:25)
[error] at resource.ManagedResourceOperations.acquireAndGet$(ManagedResourceOperations.scala:25)
[error] at resource.AbstractManagedResource.acquireAndGet(AbstractManagedResource.scala:50)
[error] at resource.ManagedResourceOperations.foreach(ManagedResourceOperations.scala:53)
[error] at resource.ManagedResourceOperations.foreach$(ManagedResourceOperations.scala:53)
[error] at resource.AbstractManagedResource.foreach(AbstractManagedResource.scala:50)
[error] at com.github.sbt.jacoco.data.InstrumentationUtils$.$anonfun$instrumentClasses$9(InstrumentationUtils.scala:61)
[error] at com.github.sbt.jacoco.data.InstrumentationUtils$.$anonfun$instrumentClasses$9$adapted(InstrumentationUtils.scala:60)
[error] at scala.collection.mutable.ResizableArray.foreach(ResizableArray.scala:62)
[error] at scala.collection.mutable.ResizableArray.foreach$(ResizableArray.scala:55)
[error] at scala.collection.mutable.ArrayBuffer.foreach(ArrayBuffer.scala:49)
[error] at com.github.sbt.jacoco.data.InstrumentationUtils$.instrumentClasses(InstrumentationUtils.scala:60)
[error] at com.github.sbt.jacoco.BaseJacocoPlugin.$anonfun$taskValues$9(BaseJacocoPlugin.scala:105)
[error] at scala.Function1.$anonfun$compose$1(Function1.scala:49)
[error] at sbt.internal.util.$tilde$greater.$anonfun$$u2219$1(TypeFunctions.scala:63)
[error] at sbt.std.Transform$$anon$4.work(Transform.scala:69)
[error] at sbt.Execute.$anonfun$submit$2(Execute.scala:283)
[error] at sbt.internal.util.ErrorHandling$.wideConvert(ErrorHandling.scala:24)
[error] at sbt.Execute.work(Execute.scala:292)
[error] at sbt.Execute.$anonfun$submit$1(Execute.scala:283)
[error] at sbt.ConcurrentRestrictions$$anon$4.$anonfun$submitValid$1(ConcurrentRestrictions.scala:265)
[error] at sbt.CompletionService$$anon$2.call(CompletionService.scala:65)
[error] at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
[error] at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
[error] at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
[error] at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
[error] at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
[error] at java.base/java.lang.Thread.run(Thread.java:840)
[error] Caused by: java.lang.IllegalArgumentException: Unsupported class file major version 61
[error] at org.objectweb.asm.ClassReader.<init>(ClassReader.java:195)
[error] at org.objectweb.asm.ClassReader.<init>(ClassReader.java:176)
[error] at org.objectweb.asm.ClassReader.<init>(ClassReader.java:162)
[error] at org.jacoco.core.internal.instr.InstrSupport.classReaderFor(InstrSupport.java:280)
[error] at org.jacoco.core.instr.Instrumenter.instrument(Instrumenter.java:75)
[error] at org.jacoco.core.instr.Instrumenter.instrument(Instrumenter.java:107)
[error] at org.jacoco.core.instr.Instrumenter.instrument(Instrumenter.java:134)
[error] at com.github.sbt.jacoco.data.InstrumentationUtils$.$anonfun$instrumentClasses$11(InstrumentationUtils.scala:64)
[error] at com.github.sbt.jacoco.data.InstrumentationUtils$.$anonfun$instrumentClasses$11$adapted(InstrumentationUtils.scala:61)
[error] at resource.AbstractManagedResource.$anonfun$acquireFor$1(AbstractManagedResource.scala:88)
[error] at scala.util.control.Exception$Catch.$anonfun$either$1(Exception.scala:252)
[error] at scala.util.control.Exception$Catch.apply(Exception.scala:228)
[error] at scala.util.control.Exception$Catch.either(Exception.scala:252)
[error] at resource.AbstractManagedResource.acquireFor(AbstractManagedResource.scala:88)
[error] at resource.ManagedResourceOperations.apply(ManagedResourceOperations.scala:26)
[error] at resource.ManagedResourceOperations.apply$(ManagedResourceOperations.scala:26)
[error] at resource.AbstractManagedResource.apply(AbstractManagedResource.scala:50)
[error] at resource.ManagedResourceOperations.acquireAndGet(ManagedResourceOperations.scala:25)
[error] at resource.ManagedResourceOperations.acquireAndGet$(ManagedResourceOperations.scala:25)
[error] at resource.AbstractManagedResource.acquireAndGet(AbstractManagedResource.scala:50)
[error] at resource.ManagedResourceOperations.foreach(ManagedResourceOperations.scala:53)
[error] at resource.ManagedResourceOperations.foreach$(ManagedResourceOperations.scala:53)
[error] at sbt.std.Transform$$anon$4.work(Transform.scala:69)
[error] at sbt.Execute.$anonfun$submit$2(Execute.scala:283)
[error] at sbt.internal.util.ErrorHandling$.wideConvert(ErrorHandling.scala:24)
[error] at sbt.Execute.work(Execute.scala:292)
[error] at sbt.Execute.$anonfun$submit$1(Execute.scala:283)
[error] at sbt.ConcurrentRestrictions$$anon$4.$anonfun$submitValid$1(ConcurrentRestrictions.scala:265)
[error] at sbt.CompletionService$$anon$2.call(CompletionService.scala:65)
[error] at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
[error] at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
[error] at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
[error] at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
[error] at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
[error] at java.base/java.lang.Thread.run(Thread.java:840)
[error] (datatransmitter / Test / fullClasspath) java.io.IOException: Error while instrumenting Group.class.
[error] (base / Test / fullClasspath) java.io.IOException: Error while instrumenting xxx.class.
[error] (udfexpression / Test / fullClasspath) java.io.IOException: Error while instrumenting xxx.class.
To fix the error, you need to change the jacocoVersion to 0.8.11 to support JDK 17 in plugins.sbt.
val jacocoVersion = "0.8.11"
dependencyOverrides ++= Seq(
"org.jacoco" % "org.jacoco.core" % jacocoVersion,
"org.jacoco" % "org.jacoco.report" % jacocoVersion,
"org.jacoco" % "org.jacoco.agent" % jacocoVersion)
try to upgrade the jacoco version helps fix my issue, when to support jdk17
ReplyDelete