Управление совместимостью версий Java - PullRequest
6 голосов
/ 04 марта 2011

Я прочитал, что " JDK обычно совместимы с прямым, а JRE обычно обратно совместимы ."

Какую проверку версий выполняют разработчики Java в своих приложениях?

Обновляете ли вы свой JDK с каждым выпуском?

Как минимизировать несовместимости между выпусками?

Ответы [ 2 ]

5 голосов
/ 03 декабря 2011

Как минимизировать несовместимости между выпусками?

enter image description here

Отчет генерируется японский инструмент проверки соответствия инструмент.

4 голосов
/ 04 марта 2011

Стратегия, которая хорошо сработала для нас, заключается в том, чтобы заранее решить, какие версии JRE мы будем поддерживать.Мы делаем это, учитывая платформы, используемые нашими пользователями, специфические для конкретной версии функции JRE, которые мы хотели бы использовать, и даты выпуска версий JRE.Все это делается в тесной консультации с нашим отделом поддержки клиентов.(Конечно, при прочих равных мы предпочитаем более новые выпуски, так как они имеют тенденцию к исправлению ошибок, оптимизации, обновлениям безопасности и т. Д.)

Затем это становится входом в наш процесс обеспечения качества.Наши усилия по тестированию должны охватывать все версии JRE, которые мы поддерживаем.

Наконец, мы используем возможность указывать конкретные версии JRE в файле JNLP при развертывании нашего приложения, чтобы гарантировать, что клиенты, которыепопробуйте запустить наше приложение с неподдерживаемой версией, чтобы получить «быстрый отказ» (с полезным сообщением о том, как получить правильную версию JRE), а не загадочные сбои в будущем.

Одна вещь, которую мы делаемминимизировать несовместимости - значит избегать недокументированных API (sun.misc и т.конкретная версия JRE.Если такая ошибка обнаруживается достаточно рано, мы предпочитаем просто удалить эту версию JRE из списка поддерживаемых версий.

...