summaryrefslogtreecommitdiff
path: root/core/src/main
diff options
context:
space:
mode:
Diffstat (limited to 'core/src/main')
-rw-r--r--core/src/main/scala/mill/eval/Evaluator.scala10
1 files changed, 7 insertions, 3 deletions
diff --git a/core/src/main/scala/mill/eval/Evaluator.scala b/core/src/main/scala/mill/eval/Evaluator.scala
index b4f4413f..63dd0813 100644
--- a/core/src/main/scala/mill/eval/Evaluator.scala
+++ b/core/src/main/scala/mill/eval/Evaluator.scala
@@ -1,5 +1,6 @@
package mill.eval
+import java.net.URLClassLoader
import ammonite.ops._
import ammonite.runtime.SpecialClassLoader
import mill.define.{Graph, Target, Task}
@@ -67,9 +68,12 @@ class Evaluator(workspacePath: Path,
val externalInputs = group.items.flatMap(_.inputs).filter(!group.contains(_))
// check if the build itself has changed
- val classLoaderSig = Thread.currentThread().getContextClassLoader match {
- case scl: SpecialClassLoader => scl.classpathSignature
- case _ => Nil
+ val classLoaderSig = group.toVector.map { task =>
+ task.getClass.getClassLoader match {
+ case scl: SpecialClassLoader => scl.classpathSignature
+ case ucl: URLClassLoader => SpecialClassLoader.initialClasspathSignature(ucl)
+ case _ => Nil
+ }
}
val inputsHash =