Выпуск интегрированной среды разработки Apache NetBeans 12.0

10 июня 2020 года

Организации Apache Software Foundation представила интегрированную среду разработки Apache NetBeans 12.0 (Архивная копия от 9 июня 2020 на Wayback Machine). Это шестой релиз, подготовленный Фондом Apache после передачи кода NetBeans компанией Oracle и первый выпуск после перевода проекта из инкубатора в разряд первичных проектов Apache. Выпуск Apache NetBeans 12 будет сопровождаться в рамках расширенного цикла поддержки (LTS).

Среда разработки предооставляет поддержку языков программирования Java SE, Java EE, PHP, JavaScript и Groovy. Интеграция поддержки языков C/C++ в очередной раз перенесена на следующий выпуск. Отмечается, что передача компанией Oracle кода, связанного с разработкой проектов на C и C++, была завершена ещё при подготовке прошлого выпуска, но интеграция этого кода в Apache NetBeans потребовала больше времени, чем ожидалось. В частности, кроме рецензирования лицензионной чистоты кода и чистки от элементов, являющихся интеллектуальной собственностью, потребовалось внесение изменений в код, так как некоторые возможности компания Oracle не смогла передать фонду Apache. До появления встроенной поддержки разработчики могут установить через Plugin Manager модули для разработки на C/C++, ранее выпущенные для NetBeans IDE 8.2.

Основные новшества NetBeans 12.0:

  • Добавлена поддержка платформы Java SE 14. В том числе обеспечены подсветка синтаксиса и форматирование кода для конструкций с новым ключевым словом "record", предоставляющим компактную форму для определения классов, позволяющую обойтись без явного определения различных низкоуровневых методов, таких как equals(), hashCode() и toString().

Продолжено тестирование поддержки сопоставления c образцом в операторе "instanceof", которая позволяет сразу определить локальную переменную для обращения к проверенному значению. Например, можно сразу писать "if (obj instanceof String s && s.length() 5) {.. s.contains(..) ..}" без явного определения "String s = (String) obj". В NetBeans при указании "if (obj instanceof String) {" будет выведена подсказка, позволяющая преобразовать код в новую форму.

  • Из возможностей Java 13 отмечена поддержка преобразования многострочных текстовых блоков, оформляемых без экранирования символов. В редакторе кода набор строй теперь можно превращать в подобные текстовые блоки и обратно.
  • Из Java 12 представлена поддержка использования "switch" в форме выражения, а не оператора.
  • Из возможностей Java 11 отмечена поддержка режима запуска программ, поставляемых в форме одного файла с исходным кодом (класс можно запустить напрямую из файла с кодом, без создания class-файлов, JAR-архивов и модулей). В NetBeans подобные однофайловые программы можно создавать вне проектов в окне Favorite, запускать и отлаживать.
  • Код поддержки JavaFX расширен регистрацией артефактов OpenJFX Gluon Maven - в диалоге управления проектом появились элементы "FXML JavaFX Maven Archetype (Gluon)" и "Simple JavaFX Maven Archetype (Gluon)" для которых предложены готовые файлы nbactions.xml, позволяющие сразу запускать и отлаживать проекты без дополнительных изменений в конфигурации.
  • Добавлена поддержка Java EE 8 с возможностью сборки web-приложений при помощи Maven или Gradle. Поддержка Jakarta EE 8 пока недоступна. Созданные в NetBeans приложения Java EE 8 можно развёртывать в контейнере Java EE 8 при помощи нового шаблона "webapp-javaee8" в Maven, созданного для использования с NetBeans. Обеспечена поддержка спецификации JSF 2.3, в том числе обеспечено автодополнение таких конструкций, как "f:websocket" и подстановка артефактов CDI. Реализована интеграция с сервером приложений Payara (ответвление от GlassFish), GlassFish 5.0.1, Tomcat и WildFly.
  • Улучшена поддержка систем сборки Maven и Gradle. Для Maven налажена интеграция с библиотекой JaCoCo и обеспечена возможность передачи аргументов компилятора Java из Maven в редактор кода Java. Для Gradle добавлена поддержка модульных java-проектов и поддержка JavaEE. Gradle Tooling API обновлён до версии 6.3. Предложен новый мастер создания Java-приложений (Java Frontend Application) для Gradle. Добавлена поддержка отладки проектов Gradle Web. Добавлена поддержка Gradle-проектов на языке Kotlin. Обеспечена возможность принудительной перезагрузки Gradle-проектов.
  • Добавлена поддержка новых возможностей PHP 7.4.
  • В редактор кода добавлена поддержка языка TypeScript (расширяет возможности JavaScript, оставаясь полностью обратно совместимым).
  • Добавлены дополнительные тёмные режимы отображения интерфейса - Dark Metal и Dark Nimbus.
  • Предложена новая тема оформления FlatLaf.
  • Улучшена поддержка экранов с высокой плотностью пикселей (HiDPI) и добавлен упрощённый виджет HeapView.

Напомним, что проект NetBeans был основан (Архивная копия от 31 августа 2013 на Wayback Machine) в 1996 году чешскими студентами с целью создания аналога Delphi для Java. В 1999 году проект был куплен компанией Sun Microsystems, а в 2000 году опубликован в исходных текстах и переведён в разряд свободных проектов. В 2010 году NetBeans перешёл в руки компании Oracle, поглотившей Sun Microsystems. Все эти годы NetBeans развивался в качестве основной среды для разработчиков на языке Java, конкурируя с Eclipse и IntelliJ IDEA, но последнее время стал продвигаться и для языков JavaScript, PHP и C/C++. Активная пользовательская база NetBeans оценивается в 1.5 млн разработчиков.

Источники править

 
 
Creative Commons
Эта статья содержит материалы из статьи «Выпуск интегрированной среды разработки Apache NetBeans 12.0», опубликованной OpenNET и распространяющейся на условиях лицензии Creative Commons Attribution (CC BY) — указание автора, источник и лицензию.
 
Эта статья загружена автоматически ботом NewsBots и ещё не проверялась редакторами Викиновостей.
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.

Комментарии

Викиновости и Wikimedia Foundation не несут ответственности за любые материалы и точки зрения, находящиеся на странице и в разделе комментариев.