NetBeans
| Company type | Open-source software |
|---|---|
| Industry | Software development |
| Founded | 1996 |
| Founder | Roman Staněk |
| Headquarters | Prague , Czech Republic |
Area served | Worldwide |
| Products | Integrated development environment (IDE) |
| Owner | The Apache Software Foundation |
| Parent | The Apache Software Foundation |
| Website | netbeans |
NetBeans is an integrated development environment (IDE) mainly designed for Java programming. It facilitates modular application creation through a framework of modules and is compatible with Windows, macOS, Linux, and Solaris operating systems. Besides Java, NetBeans supports additional languages like PHP, C, C++, HTML5, and JavaScript through various extensions. The platform’s architecture allows third party developers to enhance and tailor its features.
History
NetBeans was initially developed in 1996 under the name Xelfi as a Java IDE project by students at Charles University's Faculty of Engineering and Technology in Prague. In 1997, Roman Staněk established a company to commercialize the IDE until its acquisition by Sun Microsystems in 1999. Sun Microsystems released NetBeans as open-source software in June 2000, which encouraged community contributions.
Following Oracle's acquisition of Sun Microsystems in 2010, NetBeans was integrated with Oracle’s existing free IDE, JDeveloper. By 2012, both products were reconstructed on the unified NetBeans Platform.
In September 2016, Oracle proposed transferring NetBeans to The Apache Software Foundation to improve governance and foster greater community participation, especially with the advent of Java 9 and future versions. This initiative received support from Java’s creator, James Gosling. NetBeans joined the Apache Incubator program in October 2016.
NetBeans IDE
NetBeans IDE is an open-source integrated development environment that natively supports all types of Java applications (Java SE including JavaFX, Java ME, web applications, EJB, and mobile apps). Its notable capabilities include a project system based on Ant, compatibility with Maven, code refactoring tools, and built-in version control integration for systems such as CVS, Subversion, Git, Mercurial, and Clearcase.
Modularity
The IDE’s features are organized into modules, each responsible for specific functions like Java language support, code editing, or version control integration. NetBeans provides a comprehensive set of essential Java development modules within a single package for immediate use while allowing users to extend functionality by installing additional modules supporting other programming languages or tools. Several products, including the Sun Studio Compiler Suite, Sun Java Studio Enterprise, and Sun Java Studio Creator, are constructed on the NetBeans platform.
License
NetBeans IDE is distributed under the terms of the Apache License 2.0. Initially licensed under Sun’s Common Development and Distribution License (CDDL) during 2006–2007, it later transitioned to a dual licensing model combining CDDL and GPL v2. After Oracle donated the project to the Apache Foundation, NetBeans graduated as a top-level Apache project in April 2019.
Other products
In an interview conducted in October 2016, Oracle Vice President Bill Pataky emphasized several Oracle offerings built upon NetBeans:
- Oracle Developer Studio, a commercial environment for C, C++, Fortran, and Java development fully based on NetBeans
- Oracle JDeveloper, Oracle’s comprehensive development tool incorporating key subsystems from NetBeans
- Oracle JavaScript Extension Toolkit, an open-source toolkit utilizing modern web standards that designates NetBeans as its preferred IDE
Integrated components
The following components are incorporated within the NetBeans IDE:
NetBeans Profiler
The NetBeans Profiler serves as a monitoring utility for Java applications, assisting developers in detecting memory leaks and enhancing performance. It has been embedded in the core IDE since version 6.0 and traces its origins back to Sun Laboratories' JFluid research initiative. This project pioneered methods such as dynamic bytecode instrumentation to minimize profiling overhead, enabling effective runtime analysis even for extensive or intricate Java programs. Additionally, the profiler features Profiling Points, which facilitate precise timing measurements during code execution.
GUI design tool
Previously referred to as project Matisse, this GUI design tool allows developers to create and prototype Swing graphical user interfaces using a drag-and-drop approach for component placement. It offers integrated support for JSR 295 (Beans Binding technology), although support for JSR 296 (Swing Application Framework) was discontinued starting with version 7.1.
NetBeans JavaScript editor
The NetBeans JavaScript editor delivers sophisticated capabilities for working with JavaScript, Ajax, and CSS. Its functionalities include syntax highlighting, code refactoring, autocomplete for native objects and functions, automatic generation of JavaScript class templates and Ajax callback templates, along with built-in browser compatibility verification.
For CSS editing, it provides code completion for style properties, fast navigation through navigator panels, views that display CSS rule declarations and the file hierarchy, sorting options by name or type, creation of new rules, and partial renaming of rule names.
Since version 7.4, NetBeans has integrated Oracle’s Nashorn JavaScript engine to boost scripting execution efficiency.
NetBeans IDE download packages
NetBeans IDE is available in various downloadable bundles tailored to different development requirements, with the option to add additional features later within the IDE.
NetBeans IDE Bundle for Web and Java EE
The NetBeans IDE Bundle for Web & Java EE delivers a full suite of tools supporting Java EE 6 standards such as the Web Profile, Enterprise Java Beans (EJBs), servlets, Java Persistence API, web services, and annotations. It includes compatibility with JSF 2.0 (Facelets), JSP, Hibernate, Spring, Struts frameworks, as well as Java EE 5 and J2EE 1.4 platforms. Included application servers are GlassFish and Apache Tomcat.
Notable capabilities encompass:
- Advanced support for CDI, RESTful services, and Java Persistence
- Bean Validation integration
- JSF component libraries bundled with PrimeFaces
- Enhanced Expression Language editing within JSF featuring code completion and refactoring tools
NetBeans IDE Bundle for PHP
Support for PHP has been present since version 5.6. The PHP bundle offers:
- Syntax highlighting, intelligent code completion, error detection, and CVS version control integration
- Semantic analysis including parameter usage and identification of unused variables
- Debugging support via xdebug
- Integration with PHPUnit and Selenium testing frameworks
- Tools for measuring code coverage
- Compatibility with Symfony (from version 6.8), Zend Framework (from 6.9), and Yii Framework (since 7.3)
- Support for PHP 5.3 namespaces and closures (introduced in 6.8)
- Code folding functionality for control structures (available since development version 7.2)
NetBeans IDE Comprehensive Package
Oracle provides an all-inclusive NetBeans package that integrates every feature:
- Core IDE with support for Java SE and JavaFX
- Web development and Java EE capabilities
- Java ME tools
- C/C++ programming support
- PHP compatibility (version 5.5 and above)
- Apache Groovy integration
- GlassFish and Apache Tomcat servers
Official support for Ruby was terminated following the release of version 7.0.
Localization
The NetBeans IDE is officially available in Brazilian Portuguese, Japanese, and Simplified Chinese. Additionally, community-driven translations exist for numerous languages such as Afrikaans, Catalan, Dutch, French, German, Italian, Korean, Russian, Spanish, among others, catering to different platform editions and Java SE versions.
See also
- Comparison of integrated development environments
- Eclipse IDE
- JetBrains IntelliJ
- Oracle JDeveloper
- Oracle Developer Studio
- Sun Microsystems