Новости Java #20

• Началась разработка Java 18. В репозитории GitHub появился пулл-реквест со стандартными процедурами, которые проводятся при старте нового релиза: добавление новых констант с версиями, таблиц символов, заголовков в файлах и т.д. Новая версия формата class-файлов будет равна 62.

• Вышел новый черновик JEP, связанный с проектом Valhalla и примитивными объектами: Better-defined JVM class file validation.

• В JEP 411: Deprecate the Security Manager for Removal были внесены важные изменения. Значение свойства java.security.manager всё-таки предлагается по умолчанию оставить равным allow, а не disallow, что означает, что при вызове System.setSecurityManager() будет выводиться предупреждение в консоль, а не выбрасываться UnsupportedOperationException. Таким образом, приложения, которые используют setSecurityManager(), будут продолжать работать на Java 17 без изменений, что облегчит их миграцию.

Однако значение свойства java.security.manager всё-таки станет равным disallow, но это произойдёт в Java 18.

• В рассылке OpenJDK продолжается обсуждение темы абстрактности класса Object. На данный момент предлагается следующее:

  • Будет введён новый метод IdentityObject::newIdentity (Б.Гетц предлагает Objects::newIdentity), который будет возвращать объект некоторого внутреннего класса, реализующего интерфейс IdentityObject.
  • JVM будет заменять вызовы new Object() на создание объекта, реализующего IdentityObject.
  • javac будет заменять вызовы new Object() на IdentityObject.newIdentity().

Такая стратегия позволит постепенно перейти от возможности вызова new Object() до его полного запрета в будущем.

• Программисты из Amazon предлагают порассуждать о возможности реализации Partial Escape Analysis в Hotspot.

• Вышла Jakarta EE 9.1 с поддержкой Java 11. Также вышел Eclipse GlassFish 6.1.0, который соответствует спецификации Jakarta EE 9.1.

• Вышел Hibernate 5.5.0.Final. Вместе с обычными артефактами в пространстве имён javax теперь появились аналогичные артефакты в пространстве имён jakarta. Например, у Hibernate Core есть две версии: hibernate-core и hibernate-core-jakarta.

• Вышли новые ранние сборки JDK: JDK 17-ea+25, JDK 17-loom+7.

• Вышел NetBeans 12.4.

• Вышла IntelliJ IDEA 2021.1.2.

• Вышел JMH 1.32.

Подписывайтесь на канал в Telegram, чтобы не пропускать новости.

Все материалы на этом сайте выложены под лицензией CC BY-SA 4.0
© Евгений Козлов, 2017-2024
Feed
Table of JEPs