Использует ли WildFly 25 jakarta.* API или javax.* API по-прежнему совместим

Я обновил свой проект с java 11 до 17, и, соответственно, мне пришлось обновить свою версию wildfly с 15 до 25, потому что война java17 несовместима с wildfly15. здесь мой вопрос: нужно ли мне перенести мой javax в jakarta, потому что wildfly теперь поддерживает Jakarta EE 8 после выпуска wildfly 17. Так действительно ли обязательно переходить в Джакарту из javax или для этого есть обходной путь.

1 ответ

Jakarta EE 8 по-прежнему использует этот пакет. По сути, это то же самое, что и Java EE 8, изменилось только название бренда. Jakarta EE 9 была первой, кто использовал этот пакет. Jakarta EE 10 продолжает эту тенденцию.

Обратите внимание, что WildFly поставляется как «WildFly» и «WildFly Preview». Согласно документам :

Версии WildFly 17–26 — это Jakarta EE 8.
Предварительные версии WildFly 22–26 — это Jakarta EE 9.
WildFly и WildFly Preview версии 27 — это Jakarta EE 10.

В вашем конкретном случае у вас, по-видимому, есть приложение Jakarta EE 8 и сервер WildFly 25. Так что, если вы выбрали «WildFly 25», а не «WildFly Preview 25», все в порядке. Быстрый способ проверить — вслепую развернуть целевую WAR на сервере и проверить, не выдает ли она никаких ошибок.NoClassDefFoundErrorошибки в классах во время выполнения.

Кстати, последней версией WildFly, поддерживающей Jakarta EE 8, является 26, и именно она в настоящее время все еще активно поддерживается (на момент написания 26.1.3 была выпущена всего 9 дней назад, а 25.x больше не поддерживается). больше года), поэтому я настоятельно рекомендую перейти с WildFly 25 на WildFly 26.

Тем не менее, вам действительно следует перейти наjakarta.*как следующий шаг, потому чтоjavax.*явно тупиковый путь.

Другие вопросы по тегам