Add scalacOptions to the SBT targets

This commit is contained in:
Jason Zaugg 2021-06-24 07:42:07 +10:00
parent af14864986
commit 111cc5f473
1 changed files with 12 additions and 9 deletions

View File

@ -195,15 +195,18 @@ object BuildServerProtocol {
val items = bspBuildTargetScalacOptionsItem.all(filter).value val items = bspBuildTargetScalacOptionsItem.all(filter).value
val appProvider = appConfiguration.value.provider() val appProvider = appConfiguration.value.provider()
val sbtJars = appProvider.mainClasspath() val sbtJars = appProvider.mainClasspath()
val buildItems = builds.map { build => val buildItems = builds.map {
val pluginClassPath = build._2.unit.plugins.classpath build =>
val classpath = (pluginClassPath ++ sbtJars).map(_.toURI).toVector val plugins: LoadedPlugins = build._2.unit.plugins
ScalacOptionsItem( val scalacOptions = plugins.pluginData.scalacOptions
build._1, val pluginClassPath = plugins.classpath
Vector(), val classpath = (pluginClassPath ++ sbtJars).map(_.toURI).toVector
classpath, ScalacOptionsItem(
new File(build._2.localBase, "project/target").toURI build._1,
) scalacOptions.toVector,
classpath,
new File(build._2.localBase, "project/target").toURI
)
} }
val result = ScalacOptionsResult((items ++ buildItems).toVector) val result = ScalacOptionsResult((items ++ buildItems).toVector)
s.respondEvent(result) s.respondEvent(result)