NetBeans 10 Improves JDK 11 Support But Drops C/C++ Update: Not Really
Written by Harry Fairhead   
Friday, 04 January 2019

A new major release of the Apache NetBeans IDE is now available. NetBeans 10 has added support for JDK 11, JUnit 5, PHP, JavaScript and Groovy, as well as solving many issues. On the other hand, there is disappointing news on the C/C++ front.
Update: not as disappointing as it first appeared.

NetBeans is an IDE that gained popularity due to its combination of being a good quality IDE that supported Java, JavaScript, HTML, PHP, C, C++ and Python. Python was later dropped from the line-up, and more recent editions have focused mainly on Java with languages such as C and C++ supported using add-ins, but it retains its multi-language credentials - just.


However, it seems that the NetBeans team is struggling now that they no longer have the resources of Oracle to keep them going. The release seems not quite fininshed and certainly not polished. For example, you don't get an installer, just a zip file to download and expand. OK, this isn't difficult but there are hardly any instructions on how to do it and complete beginners might well struggle. The HTML and JavaScript support seems to be present and PHP support has been upgraded but there's no mention of C/C++. Could it be that resources are limited and C/C++ just isn't a priority compared to say Java?

In particular, while in version 9 there were instructions involving using the version 8 plugins to restore C/C++ development feature, in version 10, there is no mention of using the same workaround  and the road map shows no sign of C/C++ until you get to version 12, which led me to the draconian conclusion of the headline suggesting that NetBeans 10 lacked support for C/C++.


However, all that is required, it transpires, are a few lines of text.  Geertjan Wielenga, a leading light at NetBeans, pointed out in a comment that I had ignored the video. I hadn't missed it but it is a lot of time to spend watching a video just to find out how to unzip and setup a shortcut to the binary. Videos are sometimes a useful extra but never a replacement for documentation.

You can watch the video below:

After trying out the Netbean's version 8 plugin for C/C++ all I can say is that it works as before and it is difficult to understand why C/C++ is left of the list of supported languages when all that is needed is to install the original plugin. NetBeans is still the best C/C++ cross platform development environment and the only one that gets close to doing remote development correctly.

End of Update

The support for JDK 11 is the main change in this release. It has been improved in a number of ways. The new release adds support for dynamic class-file constants. These were added to JDK in release 11, extending the Java class-file format to support a new constant-pool form. Loading this delegates creation to a bootstrap method.

Lambda support has also been improved with support for Lambda parameters and for local-variable syntax for Lambda parameters. You also get code completion for Lambda parameters. Lambda provides a simple way to pass functionality as an argument to another method, and JDK 11 local variable syntax can be used to align the syntax of a formal parameter declaration in an implicitly typed lambda expression with the syntax of a local variable declaration.


The second area of improvement is to the PHP support. There's better handling of PHP 7.3, including the ability to use a list reference assignment, and the flexible syntax for Heredoc and NowDoc. Trailing commas in function calls are supported for PHP 7.3, while PHP 7.2 developers can use trailing commas in list syntax, coloring for object types and PHP version in project properties.

New in this release is support for JUnit 5.3.1 as a new Library. This means you can add it more easily toJava projects. For Maven projects without no existing tests, JUnit 5 is now the default JUnit version. A default JUnit 5 Test Template is now included, though developers are reminded that JUnit 5 doesn’t currently support test suite’s for its Jupiter engine, so the template provided will attempt to create a test suite using the Vintage engine.

Modules in the Groovy cluster are now included in NetBeans, meaning that all the Groovy features in Apache NetBeans GitHub are part of Apache NetBeans 10. Other Groovy support features include a simple infrastructure for writing Groovy Hints, trait support for Groovy, and what's being described as a 'first stab' at flow typing. 



More Information

Apache NetBeans

Related Articles

Oracle Proposes That NetBeans Move To Apache

NetBeans 9 RC1 Ready to Go

New Tools In NetBeans IDE 8.1

NetBeans 8.1 beta 

Java 8 Launched With Supporting Line-Up

Getting Started With NetBeans PHP - Local Projects 

TypeScript On Netbeans

Getting Started With C Using NetBeans 

Remote C/C++ Development With NetBeans 


To be informed about new articles on I Programmer, sign up for our weekly newsletter, subscribe to the RSS feed and follow us on Twitter, Facebook or Linkedin.


Apple - Master Of Malicious Compliance

Apple is under pressure to open up its closed eco system, but it still has the power to resist. It is difficult to force a horse to drink and it is turning out very difficult to make Apple comply with [ ... ]

Apache Storm 2.6 Adds Docker Image

Apache Storm 2.6 has been released. The updated version adds an official Docker image of Storm alongside other enhancements.

More News

raspberry pi books



or email your comment to:

Last Updated ( Friday, 04 January 2019 )