Reputation: 15345
I#m trying to implement an sbt plugin that contains some common settings that I can publish and add as a sbt plug in my other projects.
I have the project structure like this:
my-plugin-project
- build.sbt
- project
- plugins.sbt
- build.settings
- src
- main
- scala
- SharedSettings.scala
I have the following SharedSettings source where I define certain common settings that will be used my remaining projects:
import sbt._
import Keys._
object SharedSettings {
// Scala Versions
val scala3 = "3.4.0"
val scala2 = "2.13.15"
val supportedScalaVersions = List(scala3, scala2)
// This is for Scala 2.13
val scalacOptionsScala2 = Seq(
"-no-link-warnings", // Suppress Scaladoc @throws warnings
"-deprecation", // Emit warnings for deprecated APIs
"-explaintypes", // Provide detailed type errors
"-feature", // Warn about misused language features
"-language:existentials", // Allow existential types
"-language:experimental.macros", // Enable macro definitions
"-language:higherKinds", // Allow higher-kinded types
"-language:implicitConversions", // Allow implicit functions (views)
"-unchecked", // Enable additional warnings for assumptions in generated code
"-Xcheckinit", // Wrap field accessors to throw an exception on uninitialized access
"-Xfatal-warnings", // Fail compilation if any warnings
"-Xlint:adapted-args", // Warn if an argument list is modified to match the receiver
"-Xlint:constant", // Warn if constant evaluation leads to errors
"-Xlint:delayedinit-select", // Warn if DelayedInit member is selected
"-Xlint:doc-detached", // Warn if Scaladoc comment is detached
"-Xlint:inaccessible", // Warn about inaccessible types
"-Xlint:infer-any", // Warn when a type argument is inferred to be Any
"-Xlint:missing-interpolator", // Warn if string literal lacks interpolator
"-Xlint:nullary-override", // Warn if non-nullary def overrides nullary def
"-Xlint:nullary-unit", // Warn if nullary methods return Unit
"-Xlint:option-implicit", // Warn about Option.apply used as an implicit view
"-Xlint:package-object-classes", // Warn about class/object in package object
"-Xlint:poly-implicit-overload", // Warn about parameterized implicit overloads
"-Xlint:private-shadow", // Warn if private field shadows a superclass field
"-Xlint:stars-align", // Warn about misaligned wildcard in pattern matching
"-Xlint:type-parameter-shadow", // Warn if type parameter shadows an existing type
"-Ywarn-dead-code", // Warn about dead code
"-Ywarn-extra-implicit", // Warn about extra implicit parameters
"-Ywarn-numeric-widen", // Warn about numeric widening
"-Ywarn-unused:implicits", // Warn about unused implicits
"-Ywarn-unused:imports", // Warn about unused imports
"-Ywarn-unused:locals", // Warn about unused locals
"-Ywarn-unused:params", // Warn about unused parameters
"-Ywarn-unused:patvars", // Warn about unused pattern variables
"-Ywarn-unused:privates", // Warn about unused private members
"-Ywarn-value-discard", // Warn if non-Unit expression is unused
"-Ybackend-parallelism", "8", // Enable parallelism for backend operations
"-Ycache-plugin-class-loader:last-modified", // Enable plugin classloader caching
"-Ycache-macro-class-loader:last-modified" // Enable macro classloader caching
)
// High-Level Project Details and Configurations
val projectMetadata = Seq(
ThisBuild / organization := "com.openelectrons", // Organization name
ThisBuild / scalaVersion := scala3, // Scala version
ThisBuild / version := "0.0.1", // Project version
ThisBuild / name := "open-electrons-sbt-template", // Project name
ThisBuild / description := "common settings for open-electrons projects", // Description
ThisBuild / startYear := Some(2022), // Start year
ThisBuild / homepage := Some(url("https://open-electrons.github.io/home/")), // Homepage URL
ThisBuild / licenses := Seq("MIT" -> url("https://opensource.org/licenses/MIT")), // License
ThisBuild / developers := List( // Developers
Developer(
id = "joesan",
name = "Joesan",
url = url("https://github.com/joesan")
)
),
ThisBuild / scmInfo := Some( // Source control info
ScmInfo(
browseUrl = url("https://github.com/open-electrons/open-electrons-sbt-template")
)
)
)
// Dependency resolvers
val dependencyResolvers = Seq(
Resolver.mavenCentral,
Resolver.sonatypeRepo("releases"),
Resolver.sonatypeRepo("snapshots"),
"Typesafe Releases" at "https://repo.typesafe.com/typesafe/releases/",
"Typesafe Snapshots" at "https://repo.typesafe.com/typesafe/snapshots/"
)
// Compile options
val compileOptions = Seq(
"-deprecation", // Warn about deprecated APIs
"-feature", // Warn about misused language features
"-unchecked", // Enable additional runtime checks
"-Xfatal-warnings", // Fail on warnings
"-encoding", "utf8" // Specify file encoding
)
// Publishing configuration
val publishingConfig = Seq(
ThisBuild / publishTo := {
if (isSnapshot.value)
Some("Snapshots" at "https://oss.sonatype.org/content/repositories/snapshots")
else
Some("Releases" at "https://oss.sonatype.org/service/local/staging/deploy/maven2")
},
ThisBuild / publishMavenStyle := true,
ThisBuild / credentials += Credentials(
"Sonatype Nexus Repository Manager",
"oss.sonatype.org",
"<username>",
"<password>"
)
)
// Cross-Scala versions (if needed for cross-building)
val crossScalaVersions = Seq(scala2, scala3)
// Final Shared Settings
val settings: Seq[Setting[_]] = projectMetadata ++ Seq(
ThisBuild / scalacOptions := scalacOptionsScala2,
ThisBuild / resolvers ++= dependencyResolvers,
ThisBuild / scalacOptions ++= compileOptions,
ThisBuild / crossScalaVersions := crossScalaVersions
) ++ publishingConfig
}
When I run this like this to build and publish locally:
sbt +compile
I get the error below:
[info] welcome to sbt 1.10.6 (Oracle Corporation Java 21.0.5)
[info] loading settings for project open-electrons-sbt-settings-plugin-build from plugins.sbt...
[info] loading project definition from /Users/joesan/Projects/Private/scala-projects/open-electrons/open-electrons-templates/open-electrons-sbt-settings-plugin/project
[info] loading settings for project root from build.sbt...
[info] set current project to open-electrons-sbt-settings (in build file:/Users/joesan/Projects/Private/scala-projects/open-electrons/open-electrons-templates/open-electrons-sbt-settings-plugin/)
[info] Setting Scala version to 2.13.15 on 1 projects.
[info] Reapplying settings...
[info] set current project to open-electrons-sbt-settings (in build file:/Users/joesan/Projects/Private/scala-projects/open-electrons/open-electrons-templates/open-electrons-sbt-settings-plugin/)
[info] compiling 1 Scala source to /Users/joesan/Projects/Private/scala-projects/open-electrons/open-electrons-templates/open-electrons-sbt-settings-plugin/target/scala-2.13/sbt-1.0/classes ...
[error] ## Exception when compiling 1 sources to /Users/joesan/Projects/Private/scala-projects/open-electrons/open-electrons-templates/open-electrons-sbt-settings-plugin/target/scala-2.13/sbt-1.0/classes
[error] java.lang.NoClassDefFoundError: scala/collection/immutable/StringOps
[error] sbt.std.TaskMacro$.<init>(TaskMacro.scala:101)
[error] sbt.std.TaskMacro$.<clinit>(TaskMacro.scala)
[error] java.base/java.lang.Class.forName0(Native Method)
[error] java.base/java.lang.Class.forName(Class.java:534)
[error] java.base/java.lang.Class.forName(Class.java:513)
[error] sbt.ConcurrentRestrictions$$anon$4.$anonfun$submitValid$1(ConcurrentRestrictions.scala:265)
[error] sbt.CompletionService$$anon$2.call(CompletionService.scala:65)
[error] java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317)
[error] java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572)
[error] java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317)
[error] java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
[error] java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
[error] java.base/java.lang.Thread.run(Thread.java:1583)
[error]
[error] java.lang.NoClassDefFoundError: scala/collection/immutable/StringOps
[error] at sbt.std.TaskMacro$.<init>(TaskMacro.scala:101)
[error] at sbt.std.TaskMacro$.<clinit>(TaskMacro.scala)
[error] at java.base/java.lang.Class.forName0(Native Method)
[error] at java.base/java.lang.Class.forName(Class.java:534)
[error] at java.base/java.lang.Class.forName(Class.java:513)
[error] at scala.reflect.macros.runtime.JavaReflectionRuntimes$JavaReflectionResolvers.resolveJavaReflectionRuntime(JavaReflectionRuntimes.scala:28)
[error] at scala.reflect.macros.runtime.JavaReflectionRuntimes$JavaReflectionResolvers.resolveJavaReflectionRuntime$(JavaReflectionRuntimes.scala:27)
[error] at scala.reflect.macros.runtime.MacroRuntimes$MacroRuntimeResolver.resolveJavaReflectionRuntime(MacroRuntimes.scala:61)
[error] at scala.reflect.macros.runtime.MacroRuntimes$MacroRuntimeResolver.resolveRuntime(MacroRuntimes.scala:74)
[error] at scala.reflect.macros.runtime.MacroRuntimes.$anonfun$standardMacroRuntime$3(MacroRuntimes.scala:47)
[error] at scala.collection.convert.JavaCollectionWrappers$JMapWrapperLike.$anonfun$getOrElseUpdate$1(JavaCollectionWrappers.scala:369)
[error] at java.base/java.util.Map.computeIfAbsent(Map.java:1066)
[error] at scala.collection.convert.JavaCollectionWrappers$JMapWrapperLike.getOrElseUpdate(JavaCollectionWrappers.scala:369)
[error] at scala.collection.convert.JavaCollectionWrappers$JMapWrapperLike.getOrElseUpdate$(JavaCollectionWrappers.scala:368)
[error] at scala.collection.convert.JavaCollectionWrappers$AbstractJMapWrapper.getOrElseUpdate(JavaCollectionWrappers.scala:344)
[error] at scala.reflect.macros.runtime.MacroRuntimes.standardMacroRuntime(MacroRuntimes.scala:47)
[error] at scala.reflect.macros.runtime.MacroRuntimes.standardMacroRuntime$(MacroRuntimes.scala:40)
[error] at scala.tools.nsc.Global$$anon$6.standardMacroRuntime(Global.scala:514)
[error] at scala.tools.nsc.typechecker.AnalyzerPlugins$$anon$13.default(AnalyzerPlugins.scala:494)
[error] at scala.tools.nsc.typechecker.AnalyzerPlugins$$anon$13.default(AnalyzerPlugins.scala:491)
[error] at scala.tools.nsc.typechecker.AnalyzerPlugins.invoke(AnalyzerPlugins.scala:432)
[error] at scala.tools.nsc.typechecker.AnalyzerPlugins.pluginsMacroRuntime(AnalyzerPlugins.scala:491)
[error] at scala.tools.nsc.typechecker.AnalyzerPlugins.pluginsMacroRuntime$(AnalyzerPlugins.scala:491)
[error] at scala.tools.nsc.Global$$anon$6.pluginsMacroRuntime(Global.scala:514)
[error] at scala.reflect.macros.runtime.MacroRuntimes.macroRuntime(MacroRuntimes.scala:34)
[error] at scala.reflect.macros.runtime.MacroRuntimes.macroRuntime$(MacroRuntimes.scala:34)
[error] at scala.tools.nsc.Global$$anon$6.macroRuntime(Global.scala:514)
[error] at scala.tools.nsc.typechecker.Macros$MacroExpander.$anonfun$expand$2(Macros.scala:601)
[error] at scala.tools.nsc.Global.withInfoLevel(Global.scala:257)
[error] at scala.tools.nsc.typechecker.Macros$MacroExpander.expand(Macros.scala:595)
[error] at scala.tools.nsc.typechecker.Macros$MacroExpander.apply(Macros.scala:557)
[error] at scala.tools.nsc.typechecker.Macros.standardMacroExpand(Macros.scala:758)
[error] at scala.tools.nsc.typechecker.Macros.standardMacroExpand$(Macros.scala:756)
[error] at scala.tools.nsc.Global$$anon$6.standardMacroExpand(Global.scala:514)
[error] at scala.tools.nsc.typechecker.AnalyzerPlugins$$anon$11.default(AnalyzerPlugins.scala:478)
[error] at scala.tools.nsc.typechecker.AnalyzerPlugins$$anon$11.default(AnalyzerPlugins.scala:475)
[error] at scala.tools.nsc.typechecker.AnalyzerPlugins.invoke(AnalyzerPlugins.scala:432)
[error] at scala.tools.nsc.typechecker.AnalyzerPlugins.pluginsMacroExpand(AnalyzerPlugins.scala:475)
[error] at scala.tools.nsc.typechecker.AnalyzerPlugins.pluginsMacroExpand$(AnalyzerPlugins.scala:475)
[error] at scala.tools.nsc.Global$$anon$6.pluginsMacroExpand(Global.scala:514)
[error] at scala.tools.nsc.typechecker.Macros.macroExpand(Macros.scala:747)
[error] at scala.tools.nsc.typechecker.Macros.macroExpand$(Macros.scala:740)
[error] at scala.tools.nsc.Global$$anon$6.macroExpand(Global.scala:514)
[error] at scala.tools.nsc.typechecker.Typers$Typer.vanillaAdapt$1(Typers.scala:1281)
[error] at scala.tools.nsc.typechecker.Typers$Typer.adapt(Typers.scala:1355)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:6335)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typedArg(Typers.scala:3562)
[error] at scala.tools.nsc.typechecker.Typers$Typer.handlePolymorphicCall$1(Typers.scala:3966)
[error] at scala.tools.nsc.typechecker.Typers$Typer.doTypedApply(Typers.scala:3985)
[error] at scala.tools.nsc.typechecker.Typers$Typer.normalTypedApply$1(Typers.scala:5261)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typedApply$1(Typers.scala:5272)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typed1(Typers.scala:6264)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:6320)
[error] at scala.tools.nsc.typechecker.Typers$Typer.computeType(Typers.scala:6409)
[error] at scala.tools.nsc.typechecker.Namers$Namer.assignTypeToTree(Namers.scala:1083)
[error] at scala.tools.nsc.typechecker.Namers$Namer.inferredValTpt$1(Namers.scala:1730)
[error] at scala.tools.nsc.typechecker.Namers$Namer.valDefSig(Namers.scala:1743)
[error] at scala.tools.nsc.typechecker.Namers$Namer.memberSig(Namers.scala:1928)
[error] at scala.tools.nsc.typechecker.Namers$Namer.typeSig(Namers.scala:1878)
[error] at scala.tools.nsc.typechecker.Namers$Namer$ValTypeCompleter.completeImpl(Namers.scala:896)
[error] at scala.tools.nsc.typechecker.Namers$LockingTypeCompleter.complete(Namers.scala:2075)
[error] at scala.tools.nsc.typechecker.Namers$LockingTypeCompleter.complete$(Namers.scala:2073)
[error] at scala.tools.nsc.typechecker.Namers$TypeCompleterBase.complete(Namers.scala:2068)
[error] at scala.reflect.internal.Symbols$Symbol.completeInfo(Symbols.scala:1583)
[error] at scala.reflect.internal.Symbols$Symbol.info(Symbols.scala:1548)
[error] at scala.reflect.internal.Symbols$Symbol.initialize(Symbols.scala:1747)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typed1(Typers.scala:5892)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:6320)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typedStat$1(Typers.scala:6398)
[error] at scala.tools.nsc.typechecker.Typers$Typer.$anonfun$typedStats$10(Typers.scala:3544)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typedStats(Typers.scala:3544)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typedTemplate(Typers.scala:2140)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typedModuleDef(Typers.scala:2016)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typed1(Typers.scala:6228)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:6320)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typedStat$1(Typers.scala:6398)
[error] at scala.tools.nsc.typechecker.Typers$Typer.$anonfun$typedStats$10(Typers.scala:3544)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typedStats(Typers.scala:3544)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typedPackageDef$1(Typers.scala:5901)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typed1(Typers.scala:6230)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:6320)
[error] at scala.tools.nsc.typechecker.Analyzer$typerFactory$TyperPhase.apply(Analyzer.scala:125)
[error] at scala.tools.nsc.Global$GlobalPhase.applyPhase(Global.scala:483)
[error] at scala.tools.nsc.typechecker.Analyzer$typerFactory$TyperPhase.run(Analyzer.scala:112)
[error] at scala.tools.nsc.Global$Run.compileUnitsInternal(Global.scala:1564)
[error] at scala.tools.nsc.Global$Run.compileUnits(Global.scala:1548)
[error] at scala.tools.nsc.Global$Run.compileSources(Global.scala:1540)
[error] at scala.tools.nsc.Global$Run.compileFiles(Global.scala:1653)
[error] at scala.tools.xsbt.CachedCompiler0.run(CompilerBridge.scala:176)
[error] at scala.tools.xsbt.CachedCompiler0.run(CompilerBridge.scala:139)
[error] at scala.tools.xsbt.CompilerBridge.run(CompilerBridge.scala:43)
[error] at sbt.internal.inc.AnalyzingCompiler.compile(AnalyzingCompiler.scala:91)
[error] at sbt.internal.inc.MixedAnalyzingCompiler.$anonfun$compile$7(MixedAnalyzingCompiler.scala:196)
[error] at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:23)
[error] at sbt.internal.inc.MixedAnalyzingCompiler.timed(MixedAnalyzingCompiler.scala:252)
[error] at sbt.internal.inc.MixedAnalyzingCompiler.$anonfun$compile$4(MixedAnalyzingCompiler.scala:186)
[error] at sbt.internal.inc.MixedAnalyzingCompiler.$anonfun$compile$4$adapted(MixedAnalyzingCompiler.scala:166)
[error] at sbt.internal.inc.JarUtils$.withPreviousJar(JarUtils.scala:241)
[error] at sbt.internal.inc.MixedAnalyzingCompiler.compileScala$1(MixedAnalyzingCompiler.scala:166)
[error] at sbt.internal.inc.MixedAnalyzingCompiler.compile(MixedAnalyzingCompiler.scala:214)
[error] at sbt.internal.inc.IncrementalCompilerImpl.$anonfun$compileInternal$1(IncrementalCompilerImpl.scala:542)
[error] at sbt.internal.inc.IncrementalCompilerImpl.$anonfun$compileInternal$1$adapted(IncrementalCompilerImpl.scala:542)
[error] at sbt.internal.inc.Incremental$.$anonfun$apply$3(Incremental.scala:178)
[error] at sbt.internal.inc.Incremental$.$anonfun$apply$3$adapted(Incremental.scala:176)
[error] at sbt.internal.inc.Incremental$$anon$2.run(Incremental.scala:454)
[error] at sbt.internal.inc.IncrementalCommon$CycleState.next(IncrementalCommon.scala:117)
[error] at sbt.internal.inc.IncrementalCommon$$anon$1.next(IncrementalCommon.scala:56)
[error] at sbt.internal.inc.IncrementalCommon$$anon$1.next(IncrementalCommon.scala:52)
[error] at sbt.internal.inc.IncrementalCommon.cycle(IncrementalCommon.scala:265)
[error] at sbt.internal.inc.Incremental$.$anonfun$incrementalCompile$8(Incremental.scala:409)
[error] at sbt.internal.inc.Incremental$.withClassfileManager(Incremental.scala:496)
[error] at sbt.internal.inc.Incremental$.incrementalCompile(Incremental.scala:396)
[error] at sbt.internal.inc.Incremental$.apply(Incremental.scala:204)
[error] at sbt.internal.inc.IncrementalCompilerImpl.compileInternal(IncrementalCompilerImpl.scala:542)
[error] at sbt.internal.inc.IncrementalCompilerImpl.$anonfun$compileIncrementally$1(IncrementalCompilerImpl.scala:496)
[error] at sbt.internal.inc.IncrementalCompilerImpl.handleCompilationError(IncrementalCompilerImpl.scala:332)
[error] at sbt.internal.inc.IncrementalCompilerImpl.compileIncrementally(IncrementalCompilerImpl.scala:433)
[error] at sbt.internal.inc.IncrementalCompilerImpl.compile(IncrementalCompilerImpl.scala:137)
[error] at sbt.Defaults$.compileIncrementalTaskImpl(Defaults.scala:2442)
[error] at sbt.Defaults$.$anonfun$compileIncrementalTask$2(Defaults.scala:2392)
[error] at sbt.internal.server.BspCompileTask$.$anonfun$compute$1(BspCompileTask.scala:41)
[error] at sbt.internal.io.Retry$.apply(Retry.scala:47)
[error] at sbt.internal.io.Retry$.apply(Retry.scala:29)
[error] at sbt.internal.io.Retry$.apply(Retry.scala:24)
[error] at sbt.internal.server.BspCompileTask$.compute(BspCompileTask.scala:41)
[error] at sbt.Defaults$.$anonfun$compileIncrementalTask$1(Defaults.scala:2390)
[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:317)
[error] at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572)
[error] at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317)
[error] at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
[error] at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
[error] at java.base/java.lang.Thread.run(Thread.java:1583)
[error] Caused by: java.lang.ClassNotFoundException: scala.collection.immutable.StringOps
[error] at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:445)
[error] at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:593)
[error] at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:526)
[error] at sbt.std.TaskMacro$.<init>(TaskMacro.scala:101)
[error] at sbt.std.TaskMacro$.<clinit>(TaskMacro.scala)
[error] at java.base/java.lang.Class.forName0(Native Method)
[error] at java.base/java.lang.Class.forName(Class.java:534)
[error] at java.base/java.lang.Class.forName(Class.java:513)
[error] at scala.reflect.macros.runtime.JavaReflectionRuntimes$JavaReflectionResolvers.resolveJavaReflectionRuntime(JavaReflectionRuntimes.scala:28)
[error] at scala.reflect.macros.runtime.JavaReflectionRuntimes$JavaReflectionResolvers.resolveJavaReflectionRuntime$(JavaReflectionRuntimes.scala:27)
[error] at scala.reflect.macros.runtime.MacroRuntimes$MacroRuntimeResolver.resolveJavaReflectionRuntime(MacroRuntimes.scala:61)
[error] at scala.reflect.macros.runtime.MacroRuntimes$MacroRuntimeResolver.resolveRuntime(MacroRuntimes.scala:74)
[error] at scala.reflect.macros.runtime.MacroRuntimes.$anonfun$standardMacroRuntime$3(MacroRuntimes.scala:47)
[error] at scala.collection.convert.JavaCollectionWrappers$JMapWrapperLike.$anonfun$getOrElseUpdate$1(JavaCollectionWrappers.scala:369)
[error] at java.base/java.util.Map.computeIfAbsent(Map.java:1066)
[error] at scala.collection.convert.JavaCollectionWrappers$JMapWrapperLike.getOrElseUpdate(JavaCollectionWrappers.scala:369)
[error] at scala.collection.convert.JavaCollectionWrappers$JMapWrapperLike.getOrElseUpdate$(JavaCollectionWrappers.scala:368)
[error] at scala.collection.convert.JavaCollectionWrappers$AbstractJMapWrapper.getOrElseUpdate(JavaCollectionWrappers.scala:344)
[error] at scala.reflect.macros.runtime.MacroRuntimes.standardMacroRuntime(MacroRuntimes.scala:47)
[error] at scala.reflect.macros.runtime.MacroRuntimes.standardMacroRuntime$(MacroRuntimes.scala:40)
[error] at scala.tools.nsc.Global$$anon$6.standardMacroRuntime(Global.scala:514)
[error] at scala.tools.nsc.typechecker.AnalyzerPlugins$$anon$13.default(AnalyzerPlugins.scala:494)
[error] at scala.tools.nsc.typechecker.AnalyzerPlugins$$anon$13.default(AnalyzerPlugins.scala:491)
[error] at scala.tools.nsc.typechecker.AnalyzerPlugins.invoke(AnalyzerPlugins.scala:432)
[error] at scala.tools.nsc.typechecker.AnalyzerPlugins.pluginsMacroRuntime(AnalyzerPlugins.scala:491)
[error] at scala.tools.nsc.typechecker.AnalyzerPlugins.pluginsMacroRuntime$(AnalyzerPlugins.scala:491)
[error] at scala.tools.nsc.Global$$anon$6.pluginsMacroRuntime(Global.scala:514)
[error] at scala.reflect.macros.runtime.MacroRuntimes.macroRuntime(MacroRuntimes.scala:34)
[error] at scala.reflect.macros.runtime.MacroRuntimes.macroRuntime$(MacroRuntimes.scala:34)
[error] at scala.tools.nsc.Global$$anon$6.macroRuntime(Global.scala:514)
[error] at scala.tools.nsc.typechecker.Macros$MacroExpander.$anonfun$expand$2(Macros.scala:601)
[error] at scala.tools.nsc.Global.withInfoLevel(Global.scala:257)
[error] at scala.tools.nsc.typechecker.Macros$MacroExpander.expand(Macros.scala:595)
[error] at scala.tools.nsc.typechecker.Macros$MacroExpander.apply(Macros.scala:557)
[error] at scala.tools.nsc.typechecker.Macros.standardMacroExpand(Macros.scala:758)
[error] at scala.tools.nsc.typechecker.Macros.standardMacroExpand$(Macros.scala:756)
[error] at scala.tools.nsc.Global$$anon$6.standardMacroExpand(Global.scala:514)
[error] at scala.tools.nsc.typechecker.AnalyzerPlugins$$anon$11.default(AnalyzerPlugins.scala:478)
[error] at scala.tools.nsc.typechecker.AnalyzerPlugins$$anon$11.default(AnalyzerPlugins.scala:475)
[error] at scala.tools.nsc.typechecker.AnalyzerPlugins.invoke(AnalyzerPlugins.scala:432)
[error] at scala.tools.nsc.typechecker.AnalyzerPlugins.pluginsMacroExpand(AnalyzerPlugins.scala:475)
[error] at scala.tools.nsc.typechecker.AnalyzerPlugins.pluginsMacroExpand$(AnalyzerPlugins.scala:475)
[error] at scala.tools.nsc.Global$$anon$6.pluginsMacroExpand(Global.scala:514)
[error] at scala.tools.nsc.typechecker.Macros.macroExpand(Macros.scala:747)
[error] at scala.tools.nsc.typechecker.Macros.macroExpand$(Macros.scala:740)
[error] at scala.tools.nsc.Global$$anon$6.macroExpand(Global.scala:514)
[error] at scala.tools.nsc.typechecker.Typers$Typer.vanillaAdapt$1(Typers.scala:1281)
[error] at scala.tools.nsc.typechecker.Typers$Typer.adapt(Typers.scala:1355)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:6335)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typedArg(Typers.scala:3562)
[error] at scala.tools.nsc.typechecker.Typers$Typer.handlePolymorphicCall$1(Typers.scala:3966)
[error] at scala.tools.nsc.typechecker.Typers$Typer.doTypedApply(Typers.scala:3985)
[error] at scala.tools.nsc.typechecker.Typers$Typer.normalTypedApply$1(Typers.scala:5261)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typedApply$1(Typers.scala:5272)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typed1(Typers.scala:6264)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:6320)
[error] at scala.tools.nsc.typechecker.Typers$Typer.computeType(Typers.scala:6409)
[error] at scala.tools.nsc.typechecker.Namers$Namer.assignTypeToTree(Namers.scala:1083)
[error] at scala.tools.nsc.typechecker.Namers$Namer.inferredValTpt$1(Namers.scala:1730)
[error] at scala.tools.nsc.typechecker.Namers$Namer.valDefSig(Namers.scala:1743)
[error] at scala.tools.nsc.typechecker.Namers$Namer.memberSig(Namers.scala:1928)
[error] at scala.tools.nsc.typechecker.Namers$Namer.typeSig(Namers.scala:1878)
[error] at scala.tools.nsc.typechecker.Namers$Namer$ValTypeCompleter.completeImpl(Namers.scala:896)
[error] at scala.tools.nsc.typechecker.Namers$LockingTypeCompleter.complete(Namers.scala:2075)
[error] at scala.tools.nsc.typechecker.Namers$LockingTypeCompleter.complete$(Namers.scala:2073)
[error] at scala.tools.nsc.typechecker.Namers$TypeCompleterBase.complete(Namers.scala:2068)
[error] at scala.reflect.internal.Symbols$Symbol.completeInfo(Symbols.scala:1583)
[error] at scala.reflect.internal.Symbols$Symbol.info(Symbols.scala:1548)
[error] at scala.reflect.internal.Symbols$Symbol.initialize(Symbols.scala:1747)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typed1(Typers.scala:5892)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:6320)
[error] at scala.tools.nsc.typechecker.Typers$Typer.typedStat$1(Typers.scala:6398)
[error] at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
[error] at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
[error] at java.base/java.lang.Thread.run(Thread.java:1583)
[error] (Compile / compileIncremental) java.lang.NoClassDefFoundError: scala/collection/immutable/StringOps
[error] Total time: 2 s, completed Dec 22, 2024, 10:35:49 PM
Upvotes: 0
Views: 43