summaryrefslogtreecommitdiff
path: root/scalaplugin
diff options
context:
space:
mode:
authorLi Haoyi <haoyi.sg@gmail.com>2017-11-22 20:41:35 -0800
committerLi Haoyi <haoyi.sg@gmail.com>2017-11-22 20:41:35 -0800
commit3a87314737bea39b5d194ad2a9e7a88085011755 (patch)
tree26efb3ae3326df423376c675913a3a5bed359103 /scalaplugin
parentc73413a6ce30ba78f6dd34081bdd3d9bb8f2099d (diff)
downloadmill-3a87314737bea39b5d194ad2a9e7a88085011755.tar.gz
mill-3a87314737bea39b5d194ad2a9e7a88085011755.tar.bz2
mill-3a87314737bea39b5d194ad2a9e7a88085011755.zip
Targets living in cross modules can now be properly discovered, run and cached.
Try out the following commands on our Mill `build.sc` file to exercise this functionality - `scalaplugin/target/mill run Core.cross[jarA].jar` - `scalaplugin/target/mill run Core.cross[jarB].jar` - `scalaplugin/target/mill run Core.cross[jarC].jar`
Diffstat (limited to 'scalaplugin')
-rw-r--r--scalaplugin/src/main/scala/mill/scalaplugin/GenIdea.scala4
1 files changed, 2 insertions, 2 deletions
diff --git a/scalaplugin/src/main/scala/mill/scalaplugin/GenIdea.scala b/scalaplugin/src/main/scala/mill/scalaplugin/GenIdea.scala
index f51561d0..fd360d8b 100644
--- a/scalaplugin/src/main/scala/mill/scalaplugin/GenIdea.scala
+++ b/scalaplugin/src/main/scala/mill/scalaplugin/GenIdea.scala
@@ -23,8 +23,8 @@ object GenIdea {
val workspacePath = pwd / 'out
val evaluator = new Evaluator(workspacePath, mapping, _ => ())
- val modules = Mirror.traverse(discovered.mirror){ (h, p) =>
- h.node(obj, Nil) match {
+ val modules = Mirror.traverse(obj, discovered.mirror){ (h, p) =>
+ h.node(obj, p.map{case Mirror.Segment.Cross(vs) => vs case _ => Nil}.toList) match {
case m: ScalaModule => Seq(p -> m)
case _ => Nil
}