Mac Java - Исключение: java.lang.UnsupportedClassVersionError - PullRequest
1 голос
/ 12 января 2012

Некоторые пользователи Mac сообщают об этой ошибке. В какой версии я могу создать апплет, чтобы пользователи Mac могли его использовать?

Спасибо

Ответы [ 2 ]

2 голосов
/ 12 января 2012

Используйте опции кросс-компиляции из javac, чтобы скомпилировать код, совместимый с определенной версией Java.

Затем используйте сценарий deployJava.js (связанный со страницей info. В апплетах ), чтобы проверить, что у пользователя есть минимальная версия.

В какой версии я могу создать апплет, чтобы пользователи Mac могли его использовать?

Как уже упоминали другие (/ ссылаются на), Mac могут поддерживать различные версии Java. Возможно, более актуальный вопрос заключается в следующем.

Какая минимальная версия Java требуется для запуска приложения .?

Я полагаю, что 1,4, возможно, 1,3, является минимально необходимым. Я использовал 1.6, чтобы построить его, хотя.

Параметры кросс-компиляции (особенно с использованием -bootclasspath) должны дать окончательный ответ на этот вопрос.

Изначально я не упоминал -bootclasspath, поскольку вы, возможно, работали с 1.7 SDK, который теперь предупреждает о его использовании, когда указано -source / -target. Использование этой опции требует наличия rt.jar (базовых классов J2SE) соответствующей версии для компиляции. Он проверяет, что классы, методы и атрибуты в коде действительно существуют в поставляемом банке RT.

Таким образом, если у вас есть компилятор версии 1.6 (или более поздней версии) и JRE соответствующей целевой версии (для rt.jar, а также для тестирования во время выполнения), он должен быть можно скомпилировать код, совместимый для любой версии.

Если я скачаю 1.4 и соберусь с этим, он должен работать почти для всех?

  • Для не требуется JDK, просто JRE и правильные параметры кросс-компиляции.
  • Нецелесообразно доставлять код «всем». Некоторые люди (или те, кто контролирует ПК, который они используют) предпочитают не устанавливать Java, чтобы отключить ее, если она стандартна.
1 голос
/ 12 января 2012

Проверьте версию JDK или JRE на Mac.Вы используете более старую версию JDK или JRE для загрузки файла JAR, который упакован в более новую версию JDK или JRE, чем ваша.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...