• Началась разработка 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.