Java 5-скомпилированные двоичные файлы на Java 1.3 времени выполнения - PullRequest
3 голосов
/ 02 июня 2011

Могу ли я узнать, есть ли какие-либо проблемы с выполнением скомпилированного кода Java 5 (с соответствием источника / цели Java 1.3) на Java 1.3 JVM?

Я знаю, что это довольно странно, но большинство наших клиентов работают на Java 5, но некоторые из нас все еще на Java 1.3 ограничены из-за не зависящих от нас условий. Наш инструмент CI использует компилятор Java 5, но мы устанавливаем исходную и целевую совместимость с Java 1.3 для обратной совместимости. Мы не используем Java 1.3 для CI, потому что существуют модульные тесты, которые не компилируются в 1.3.

Это будет проблемой?

Заранее спасибо!

Ура, - Пол

Ответы [ 2 ]

3 голосов
/ 02 июня 2011

Единственный способ заставить компилятор проверить этот источник в вашем приложении.использует только методы 1.3, чтобы указать -bootclasspath, указывающий на 1.3 rt.jar.Обратите внимание, что вы можете получить это из 1.3 JRE, для него не требуется 1.3 SDK / компилятор.Конечно, укажите -target 1,3.

3 голосов
/ 02 июня 2011

Самая большая проблема, с которой вы столкнетесь, заключается в том, что, хотя сгенерированный байт-код JVM будет совместим с 1.3, JDK, с которым вы компилируете, - это Java 5. Очень легко использовать класс или, что более вероятно, метод, которыйсуществует в Java 5, но не в 1.3 JDK.Этот код будет хорошо скомпилирован, но не сможет работать в среде исполнения 1.3.

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