more robust java.ext.dirs: avoid picking up accidental jars from system directories;
authorwenzelm
Tue, 23 Jan 2018 16:37:57 +0100
changeset 67490 982f0bf34804
parent 67488 3d33847dc911
child 67491 59527ee2d6da
more robust java.ext.dirs: avoid picking up accidental jars from system directories;
Admin/Linux/Isabelle.run
Admin/MacOS/Info.plist-part2
Admin/Windows/launch4j/isabelle.xml
bin/isabelle_java
lib/Tools/java
lib/Tools/scala
lib/Tools/scalac
--- a/Admin/Linux/Isabelle.run	Mon Jan 22 22:45:45 2018 +0100
+++ b/Admin/Linux/Isabelle.run	Tue Jan 23 16:37:57 2018 +0100
@@ -34,6 +34,7 @@
 
 exec "$ISABELLE_HOME/contrib/jdk/${ISABELLE_PLATFORM64:-$ISABELLE_PLATFORM32}/jre/bin/java" \
   "-Disabelle.root=$ISABELLE_HOME" "${JAVA_OPTIONS[@]}" \
+  "-Djava.ext.dirs=$ISABELLE_HOME/contrib/jdk/${ISABELLE_PLATFORM64:-$ISABELLE_PLATFORM32}/jre/lib/ext" \
   -classpath "{CLASSPATH}" \
   "-splash:$ISABELLE_HOME/lib/logo/isabelle.gif" \
   isabelle.Main "$@"
--- a/Admin/MacOS/Info.plist-part2	Mon Jan 22 22:45:45 2018 +0100
+++ b/Admin/MacOS/Info.plist-part2	Tue Jan 23 16:37:57 2018 +0100
@@ -1,4 +1,5 @@
 <string>-Disabelle.root=$APP_ROOT/Contents/Resources/{ISABELLE_NAME}</string>
+<string>-Djava.ext.dirs=$APP_ROOT/Contents/Resources/{ISABELLE_NAME}/contrib/jdk/x86_64-darwin/Contents/Home/jre/lib/ext</string>
 <string>-Disabelle.app=true</string>
 </array>
 <key>JVMArguments</key>
--- a/Admin/Windows/launch4j/isabelle.xml	Mon Jan 22 22:45:45 2018 +0100
+++ b/Admin/Windows/launch4j/isabelle.xml	Tue Jan 23 16:37:57 2018 +0100
@@ -30,7 +30,7 @@
     <maxVersion></maxVersion>
     <jdkPreference>jdkOnly</jdkPreference>
     <runtimeBits>64</runtimeBits>
-    <opt>-Disabelle.root=&quot;%EXEDIR%&quot; -Dcygwin.root=&quot;%EXEDIR%\contrib\cygwin&quot;</opt>
+    <opt>-Disabelle.root=&quot;%EXEDIR%&quot; -Djava.ext.dirs=&quot;%EXEDIR%\contrib\jdk\x86_64-windows\jre\lib\ext&quot; -Dcygwin.root=&quot;%EXEDIR%\contrib\cygwin&quot;</opt>
   </jre>
   <splash>
     <file>{SPLASH}</file>
--- a/bin/isabelle_java	Mon Jan 22 22:45:45 2018 +0100
+++ b/bin/isabelle_java	Tue Jan 23 16:37:57 2018 +0100
@@ -66,6 +66,8 @@
   else
     unset ISABELLE_HOME
     unset CLASSPATH
-    exec "$JAVA_HOME/bin/java" "${JAVA_ARGS[@]}" -classpath "$ISABELLE_CLASSPATH" "$@"
+    exec "$JAVA_HOME/bin/java" "${JAVA_ARGS[@]}" \
+      "-Djava.ext.dirs=$JAVA_HOME/lib/ext" \
+      -classpath "$ISABELLE_CLASSPATH" "$@"
   fi
 }
--- a/lib/Tools/java	Mon Jan 22 22:45:45 2018 +0100
+++ b/lib/Tools/java	Tue Jan 23 16:37:57 2018 +0100
@@ -10,4 +10,5 @@
 unset CLASSPATH
 
 isabelle_java java "${JAVA_ARGS[@]}" \
+  "-Djava.ext.dirs=$(platform_path "$ISABELLE_JDK_HOME/jre/lib/ext")" \
   -classpath "$(platform_path "$ISABELLE_CLASSPATH")" "$@"
--- a/lib/Tools/scala	Mon Jan 22 22:45:45 2018 +0100
+++ b/lib/Tools/scala	Tue Jan 23 16:37:57 2018 +0100
@@ -14,4 +14,5 @@
 done
 
 isabelle_scala scala "${SCALA_ARGS[@]}" \
+  "-Djava.ext.dirs=$(platform_path "$ISABELLE_JDK_HOME/jre/lib/ext")" \
   -classpath "$(platform_path "$ISABELLE_CLASSPATH")" "$@"
--- a/lib/Tools/scalac	Mon Jan 22 22:45:45 2018 +0100
+++ b/lib/Tools/scalac	Tue Jan 23 16:37:57 2018 +0100
@@ -7,5 +7,5 @@
 isabelle_admin_build jars || exit $?
 
 isabelle_scala scalac -Dfile.encoding=UTF-8 \
+  "-Djava.ext.dirs=$(platform_path "$ISABELLE_JDK_HOME/jre/lib/ext")" \
   -classpath "$(platform_path "$ISABELLE_CLASSPATH")" "$@"
-