Блог
MacOS запуск старых Java приложений
После обновления до Mac OS X mavericks, меня постигло необъяснимое явление. Некоторые приложения написанные на Java, стали требовать установки "Java 6 SE", хотя у меня уже была установлена самая свежая (на тот момент) версия Java 8. Особого желания устанавливать еще одну версию виртуальной машины, на SSD объемом 128GB у меня особо не было и я начал изучать вопрос.
После прочтения нескольких статей и тредов на форумах стало ясно, что все приложения в OSX - это такие контейнеры с файлами и собираются они примерно по одной схеме: сперва в него загружаются типовые конфигурационные файлы, которые сообщают операционной системе как нужно работать с приложением, какие у него требования и т.п. и потом файлы непосредственно самого приложения.
В моем случае, имело смысл обратить внимание на файл info.plist, он содержит директиву, указывающую необходимую версию JVM в системе:
JVMVersion 1.6+
Не долго думая, меняем значение 1.6+ на 1.7+ иии..., ничего не происходит. Оказывается что с 7 версии, формат строки изменился на:
JVMVersion jdk1.7.0_17.jdk Properties
После изменения директивы, приложение стало успешно запускаться на новейшей версии виртуальной машины Java.