src/Pure/Admin/other_isabelle.scala
changeset 77072 e8010cb36820
parent 77071 7a89ef6b0276
child 77073 7b65209fdfe8
--- a/src/Pure/Admin/other_isabelle.scala	Tue Jan 24 15:00:01 2023 +0100
+++ b/src/Pure/Admin/other_isabelle.scala	Tue Jan 24 15:16:24 2023 +0100
@@ -62,6 +62,19 @@
     }
   }
 
+  def scala_build(fresh: Boolean = false, echo: Boolean = false): Unit = {
+    if (fresh) {
+      Isabelle_System.rm_tree(isabelle_home + Path.explode("lib/classes"))
+    }
+    try {
+      bash(
+        "export PATH=\"" + File.bash_path(Path.explode("~~/lib/dummy_stty")) + ":$PATH\"\n" +
+        "export CLASSPATH=" + Bash.string(getenv("ISABELLE_CLASSPATH")) + "\n" +
+        "bin/isabelle jedit -b", echo = echo).check
+    }
+    catch { case ERROR(msg) => cat_error("Failed to build Isabelle/Scala/Java modules:", msg) }
+  }
+
 
   /* components */