Changes to display JVM installations on macOS/OSX.
Main change here is in Installer.java where scanDirectory was changed to work recursively, thanks to this we are able to find JVM on macOS which are in less predicable places ;-) on macOS JVM location will be for example /Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home, but scaning /Library/Java/JavaVirtualMachines/ without this recursive thing will not find JVM.
Additionally changed text in MainWindow which suggests now that users should prefer alternate JVM over replace JVM, with short "explanation" why.
changes for support JDK8u172, needed to create dmh-field-accessors-java8u172.patch because in src/share/vm/classfile/vmSymbols.hpp getProtectionDomain have 2 new templates and old dmh-field-accessors-java8u80.patch wasn't able to merge
Jvmti GetLoadedClasses collects classes from classloaders
in java8 while java7 collects it from SystemDictionary. Dcevm7/8
holds only new classes in Dictionary while classloader holds
all versions including old one. Therefore dcevm8 must return
only new version in jvmti getLoadedClasses.
Flag is used to specify set of packages to be deoptimized after class redefinition.
By default all classes are redefined that leads to performance drop.
Patch for jdk7u85 is applicable on jdk7u111 as well. Dcevm for
jdk7u85 is binary compatible up to jdk7u99. The binary compatibility
for newer java7 versions is broken therefore dcevm for jdk7u111 is
necessarry. Same for jdk8u102 and higher.
Patch for jdk7u85 is applicable on jdk7u111 as well. Dcevm for jdk7u85
is binary compatible up to jdk7u99. The binary compatibility for newer
java7 versions is broken therefore dcevm for jdk7u111 is necessarry.
Patch for jdk7u85 is applicable on jdk7u111 as well. Dcevm for jdk7u85
is binary compatible up to jdk7u99. The binary compatibility for newer
java7 versions is broken therefore dcevm for jdk7u111 is necessarry.