diff options
-rwxr-xr-x | build.sc | 6 | ||||
-rw-r--r-- | main/client/src/mill/main/client/MillClientMain.java | 16 | ||||
-rw-r--r-- | main/src/mill/main/RunScript.scala | 1 | ||||
-rw-r--r-- | scratch/build.sc | 2 |
4 files changed, 9 insertions, 16 deletions
@@ -316,7 +316,10 @@ object dev extends MillModule{ val classpath = runClasspath().map(_.path.toString) val args = forkArgs().distinct val (shellArgs, cmdArgs) = - if (!scala.util.Properties.isWin) (args, args) + if (!scala.util.Properties.isWin) ( + Seq("-DMILL_CLASSPATH=" + classpath.mkString(":")) ++ args, + Seq("-DMILL_CLASSPATH=" + classpath.mkString(";")) ++ args + ) else ( Seq("""-XX:VMOptionsFile="$( dirname "$0" )"/mill.vmoptions"""), Seq("""-XX:VMOptionsFile=%~dp0\mill.vmoptions""") @@ -345,6 +348,7 @@ def release = T{ val dest = T.ctx().dest val filename = if (scala.util.Properties.isWin) "mill.bat" else "mill" val args = Seq( + "-DMILL_CLASSPATH=$0", "-DMILL_VERSION=" + publishVersion()._2, // Workaround for Zinc/JNA bug // https://github.com/sbt/sbt/blame/6718803ee6023ab041b045a6988fafcfae9d15b5/main/src/main/scala/sbt/Main.scala#L130 diff --git a/main/client/src/mill/main/client/MillClientMain.java b/main/client/src/mill/main/client/MillClientMain.java index 17a043f6..e3d3ec6e 100644 --- a/main/client/src/mill/main/client/MillClientMain.java +++ b/main/client/src/mill/main/client/MillClientMain.java @@ -11,20 +11,8 @@ import java.util.*; public class MillClientMain { static void initServer(String lockBase, boolean setJnaNoSys) throws IOException,URISyntaxException{ - ArrayList<String> selfJars = new ArrayList<String>(); - ClassLoader current = MillClientMain.class.getClassLoader(); - while(current != null){ - if (current instanceof java.net.URLClassLoader) { - URL[] urls = ((java.net.URLClassLoader) current).getURLs(); - for (URL url: urls) { - selfJars.add(new File(url.toURI()).getCanonicalPath()); - } - } - current = current.getParent(); - } - if (Util.isJava9OrAbove) { - selfJars.addAll(Arrays.asList(System.getProperty("java.class.path").split(File.pathSeparator))); - } + String[] selfJars = System.getProperty("MILL_CLASSPATH").split(File.pathSeparator); + ArrayList<String> l = new java.util.ArrayList<String>(); l.add("java"); Properties props = System.getProperties(); diff --git a/main/src/mill/main/RunScript.scala b/main/src/mill/main/RunScript.scala index 50cbb213..5f10db44 100644 --- a/main/src/mill/main/RunScript.scala +++ b/main/src/mill/main/RunScript.scala @@ -76,6 +76,7 @@ object RunScript{ log: Logger ): Res[mill.define.BaseModule] = { + log.info("RunScript.evaluateRootModule") val (pkg, wrapper) = Util.pathToPackageWrapper(Seq(), path relativeTo wd) for { diff --git a/scratch/build.sc b/scratch/build.sc index 9ee78d63..ae763e4d 100644 --- a/scratch/build.sc +++ b/scratch/build.sc @@ -1,3 +1,3 @@ def thingy = T { - 1234567 + 12345678 }
\ No newline at end of file |