summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore3
-rw-r--r--contrib/bsp/src/mill/contrib/BSP.scala (renamed from contrib/bsp/src/mill/contrib/MainMillBuildServer.scala)0
-rw-r--r--contrib/bsp/src/mill/contrib/bsp/MillBuildServer.scala9
3 files changed, 8 insertions, 4 deletions
diff --git a/.gitignore b/.gitignore
index af52d378..6c7f0baa 100644
--- a/.gitignore
+++ b/.gitignore
@@ -11,4 +11,5 @@ contrib/bsp/mill-external-bs
contrib/bsp/mill-out-bs
mill.iml
.bsp/
-bsp.log \ No newline at end of file
+bsp.log
+contrib/bsp/test/ \ No newline at end of file
diff --git a/contrib/bsp/src/mill/contrib/MainMillBuildServer.scala b/contrib/bsp/src/mill/contrib/BSP.scala
index d31eb7f4..d31eb7f4 100644
--- a/contrib/bsp/src/mill/contrib/MainMillBuildServer.scala
+++ b/contrib/bsp/src/mill/contrib/BSP.scala
diff --git a/contrib/bsp/src/mill/contrib/bsp/MillBuildServer.scala b/contrib/bsp/src/mill/contrib/bsp/MillBuildServer.scala
index 7454a944..6e9cbc37 100644
--- a/contrib/bsp/src/mill/contrib/bsp/MillBuildServer.scala
+++ b/contrib/bsp/src/mill/contrib/bsp/MillBuildServer.scala
@@ -9,6 +9,7 @@ import mill.api.Result.{Skipped, Success}
import mill.{scalalib, _}
import mill.api.{BspContext, Result, Strict}
import mill.contrib.bsp.ModuleUtils._
+import mill.define.Segment.Label
import mill.eval.Evaluator
import mill.scalalib._
import mill.scalalib.api.CompilationResult
@@ -185,12 +186,12 @@ class MillBuildServer(evaluator: Evaluator,
for (targetId <- resourcesParams.getTargets.asScala) {
val millModule = targetIdToModule(targetId)
val resources = evaluateInformativeTask(evaluator, millModule.resources, Agg.empty[PathRef]).
+ filter(pathRef => os.exists(pathRef.path)).
flatMap(pathRef => os.walk(pathRef.path)).
map(path => path.toIO.toURI.toString).
toList.asJava
items ++= List(new ResourcesItem(targetId, resources))
}
-
new ResourcesResult(items.asJava)
}
handleExceptions[String, ResourcesResult](_ => getResources, "")
@@ -427,8 +428,10 @@ class MillBuildServer(evaluator: Evaluator,
val options = evaluateInformativeTask(evaluator, m.scalacOptions, Seq.empty[String]).toList
val classpath = evaluateInformativeTask(evaluator, m.runClasspath, Agg.empty[PathRef]).
map(pathRef => pathRef.path.toIO.toURI.toString).toList
- val classDirectory = (Evaluator.resolveDestPaths(os.pwd / "out" , m.millModuleSegments).
- dest / "classes").toIO.toURI.toString
+ val classDirectory = (Evaluator.resolveDestPaths(
+ os.pwd / "out" ,
+ m.millModuleSegments ++ Seq(Label("compile"))).dest / "classes"
+ ).toIO.toURI.toString
targetScalacOptions ++= List(new ScalacOptionsItem(targetId, options.asJava, classpath.asJava, classDirectory))
case _: JavaModule => targetScalacOptions ++= List()