openjdk.ruOpenJDK на русском

JEP 541: Deprecate the macOS/x64 Port for Removal

Перевод порта macOS/x64 в статус Deprecated for Removal (устаревший, будет удалён)

ОтветственныйMikael Vidstedt
ТипFeature
ОбластьImplementation
СтатусCompleted
Выпуск28
Обсуждениеhotspot dash dev at openjdk dot org
ТрудоёмкостьS
ДлительностьS
РецензентыErik Joelsson
ОдобренMark Reinhold
Создан2026/06/05 22:47
Обновлён2026/09/09 19:46
Задача8386091

Аннотация

Объявить порт macOS/x64 устаревшим с намерением удалить его в одном из будущих выпусков, чтобы снизить затраты на сопровождение.

Мотивация

Apple перевела свои аппаратные продукты на процессорную архитектуру AArch64 и постепенно прекращает поддержку x64. Поэтому начиная с JDK 27 инженеры Oracle перестанут сопровождать порт macOS/x64. Сопровождение этого порта требует значительных усилий.

Описание

Попытка сконфигурировать сборку для macOS/x64 выдаст:

$ bash ./configure
...
checking compilation type... native
configure: error: The macOS/x64 port is deprecated and may be removed in a future release. Use --enable-deprecated-ports to suppress this error.
configure exiting with result code 1
$

Новый параметр конфигурации сборки --enable-deprecated-ports подавит ошибку, и конфигурирование продолжится:

$ bash ./configure --enable-deprecated-ports
...
checking compilation type... native
configure: WARNING: The macOS/x64 port is deprecated and may be removed in a future release.
...
Build performance summary:
* Cores to use:   32
* Memory limit:   96601 MB

The following warnings were produced. Repeated here for convenience:
WARNING: The macOS/x64 port is deprecated and may be removed in a future release.
$

Не будет никакой гарантии, что порт соберётся, не говоря уже о том, что он будет работать.

Чтобы не блокировать основную разработку, macOS/x64 по умолчанию будет отключён в GitHub Actions репозитория JDK.

Кроме того, в соответствующей документации JDK порт macOS/x64 и связанные с ним возможности, специфичные для этого порта, будут отмечены как находящиеся в статусе Deprecated for Removal.

Альтернативы

Как и в случае с ранее объявленными устаревшими портами, альтернатива такова: группа заслуживающих доверия разработчиков может явно заявить о желании сопровождать порт в дальнейшем. Если это произойдёт до перехода этого JEP в статус Integrated (интегрирован), этот JEP может быть отозван. Если это произойдёт после перехода этого JEP в статус Integrated, но до удаления порта, последующий JEP может отменить перевод порта в устаревшие.