<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <meta http-equiv="content-type" content="text/html;
      charset=windows-1252">
    <meta name="description" content="The NetBeans release roadmap,
      release notes, system requirements, and installation
      instructions.">
    <meta name="keywords" content="5">
    <title>NetBeans IDE: Roadmap, Release Notes, System Requirements,
      Installation Instructions</title>
    <link rel="stylesheet" type="text/css" href="../../netbeans.css">
    <meta name="nav_link" content="Releases &amp; Planning">
    <meta name="nav_priority" content="5">
  </head>
  <body>
    <h1>NetBeans IDE Releases</h1>
    <p> Information about recent and upcoming NetBeans IDE releases,
      including release notes and system requirements, detailed
      installation instructions, and download links for each version. </p>
    <p>See also:</p>
    <ul>
      <li><a href="roadmap.html">The NetBeans Roadmap</a> - A timeline
        of NetBeans releases. </li>
      <li><a href="../guidelines/process.html">Release Process</a> -
        General information about how NetBeans releases are done. </li>
    </ul>
    <br>
    <h2>Release 8.0<br>
    </h2>
    <p> </p>
    <p>NetBeans IDE 8.0 provides out-of-the-box code analyzers and
      editors for working with the latest Java 8 technologies--Java SE
      8, Java SE Embedded 8, and Java ME Embedded 8. The IDE also has a
      range of new enhancements that further improve its support for
      Maven and Java EE with PrimeFaces; new tools for HTML5, in
      particular for AngularJS; and improvements to PHP and C/C++
      support.<br>
    </p>
    <p>NetBeans IDE 8.0 was released March 18, 2014.</p>
    <ul>
      <li><a href="80/index.html">General Info about NetBeans IDE 8.0</a>
      </li>
      <li><a href="https://netbeans.org/downloads/">Download NetBeans
          IDE 8.0</a> </li>
    </ul>
    <h2>Release 7.4<br>
    </h2>
    <p> </p>
    <p>NetBeans IDE 7.4 extends the advanced HTML5 development support
      introduced in NetBeans IDE 7.3 to Java EE and PHP applications,
      while offering new support for mobile web development on the
      Android and iOS platforms, including support for the Cordova
      framework. Additional highlights include support for preview
      versions of JDK 8, and continued enhancements to JavaFX, PHP,
      C/C++, Maven and other features.<br>
    </p>
    <p>NetBeans IDE 7.4 was released October 15, 2013.</p>
    <ul>
      <li><a href="74/index.html">General Info about NetBeans IDE 7.4</a>
      </li>
      <li><a href="https://netbeans.org/downloads/">Download NetBeans
          IDE 7.4</a> </li>
    </ul>
    <h2>Release 7.3<br>
    </h2>
    <p> NetBeans IDE 7.3 empowers developers to create and debug rich
      Web and mobile applications using the latest HTML5, JavaScript,
      and CSS standards. Developers can expect state of the art rich web
      development experience with a page inspector and CSS style editor,
      completely revamped JavaScript editor, new JavaScript debugger,
      and more. Additional highlights available in 7.3 include continued
      enhancements to the IDE's support for Groovy, PHP, JavaFX and
      C/C++.</p>
    <p>NetBeans IDE 7.3 was released February 21, 2013.<br>
    </p>
    <p>NetBeans IDE 7.3.1 <span style="font-weight: bold;">update</span>
      was release June 12, 2013, with support for Java EE 7 and with
      patch updates.<br>
    </p>
    <ul>
      <li><a href="73/index.html">General Info about NetBeans IDE 7.3.1</a>
      </li>
      <li><a href="https://netbeans.org/downloads/">Download NetBeans
          IDE 7.3.1</a> </li>
    </ul>
    <h2>Release 7.2 <br>
    </h2>
    <p>
      <style type="text/css">p {  }</style>NetBeans IDE 7.2 provides a
      significantly improved performance and coding experience, with new
      static code analysis capabilities in the Java Editor and smarter
      project scanning. The release also includes notable features such
      as Scene Builder integration in JavaFX; support for multiple PHP
      frameworks; updated Groovy support; and many other enhancements in
      Java EE, Maven, C/C++ and the NetBeans Platform.</p>
    <p>NetBeans IDE 7.2 was released July 24, 2012.<br>
    </p>
    <p>NetBeans IDE 7.2.1 <span style="font-weight: bold;">update</span>
      was released October 22, 2012, with support for JavaME SDK 3.2 and
      JavaFX 2.2 SDK, and with patch updates.<br>
    </p>
    <ul>
      <li><a href="72/index.html">General Info about NetBeans IDE 7.2.1</a>
      </li>
      <li><a href="https://netbeans.org/downloads/">Download NetBeans
          IDE 7.2.1</a> </li>
    </ul>
    <h2>Release 7.1<br>
    </h2>
    <p>
      <style type="text/css">p { margin-bottom:</style>NetBeans IDE 7.1
      introduces support for JavaFX by enabling the full
      compile/debug/profile development cycle for JavaFX applications.
      The release also provides significant Swing GUI Builder
      enhancements, CSS3 support, and tools for visual debugging of
      Swing and JavaFX user interfaces. Additional highlights include
      Git support integrated into the IDE, new PHP debugging features,
      JavaEE improvements and more. </p>
    <p>NetBeans IDE 7.1 was released January 5, 2012.<br>
    </p>
    <p>NetBeans IDE 7.1.1 <span style="font-weight: bold;">update</span>
      was released February 29, 2012, with support for GlassFish 3.1.2,
      and with patch and performance updates. </p>
    <p>NetBeans IDE 7.1.2 <span style="font-weight: bold;">update</span>
      was released April 26, 2012, with support Java SE 7u4 and JavaFX
      2.1. <br>
    </p>
    <ul>
      <li><a href="./71/index.html">General Info about NetBeans IDE
          7.1.2</a> </li>
      <li><a href="https://netbeans.org/downloads/7.1.2/index.html">Download
NetBeans






          IDE 7.1.2</a> </li>
    </ul>
    <h2>Release 7.0<br>
    </h2>
    <p> NetBeans IDE 7.0 introduces language support for development to
      the Java SE 7 specification with the JDK 7 language features. The
      release also provides enhanced integration with the Oracle
      WebLogic server, as well as support for Oracle Database and
      GlassFish 3.1. Additional highlights include Maven 3 and HTML5
      editing support; a new GridBagLayout designer for improved Swing
      GUI development; enhanced support for executing and debugging
      standalone Java EE applications; enhancements to the Java editor,
      and more. </p>
    <p>NetBeans IDE 7.0 was released April 20, 2011.<br>
    </p>
    <p>NetBeans IDE 7.0.1 <span style="font-weight: bold;">update</span>
      was released August 1, 2011, with full JDK 7 support, and with
      patch and performance updates. </p>
    <ul>
      <li><a href="70/index.html">General Info about NetBeans IDE 7.0.1</a>
      </li>
      <li><a href="https://netbeans.org/downloads/7.0.1/index.html">Download
NetBeans






          IDE 7.0.1</a> </li>
    </ul>
    <h2>Release 6.9</h2>
    <p> NetBeans IDE 6.9 introduces the JavaFX Composer, a visual layout
      tool for visually building JavaFX GUI applications, similar to the
      Swing GUI builder for Java SE applications. Additional highlights
      include OSGi interoperability for NetBeans Platform applications;
      support for JavaFX SDK 1.3, PHP Zend framework, and Ruby on Rails
      3.0; as well as improvements to the Java Editor, Java Debugger,
      issue tracking, and more. NetBeans IDE 6.9 requires JDK 6 or
      better. <br>
    </p>
    <p>NetBeans IDE 6.9 was released June 15, 2010.<br>
    </p>
    <p>NetBeans IDE 6.9.1<span style="font-weight: bold;"> update</span>
      was released August 4, 2010, with support for JavaFX 1.3.1, and
      with patch and performance updates. </p>
    <ul>
      <li><a href="69/index.html">General Info about the NetBeans IDE
          6.9.1</a> </li>
      <li><a href="https://netbeans.org/downloads/6.9.1/index.html">Download
NetBeans






          IDE 6.9.1</a> </li>
    </ul>
    <h2>Release 6.8</h2>
    <p>NetBeans IDE 6.8 is the first IDE to provide complete support of
      Java EE 6 and the GlassFish Enterprise Server v3 platform. We also
      improved the JIRA and chat integration for Kenai.com hosted
      projects, and the support for C/C++ profiling, PHP 5.3 and the PHP
      Symfony framework, and for JavaFX projects. <br>
    </p>
    <p>NetBeans IDE 6.8 was released December 10, 2009. </p>
    <ul>
      <li><a href="68/index.html">General Info about the NetBeans IDE
          6.8</a> </li>
      <li><a href="https://netbeans.org/downloads/6.8/">Download
          NetBeans IDE 6.8</a> </li>
    </ul>
    <h2>Release 6.7</h2>
    <p> NetBeans IDE 6.7 introduces integration with Project Kenai,
      native support for Maven; GlassFish and Hudson integrations; and
      enhancements to Java, PHP, Groovy and C/C++, support for
      JavaScript 1.7, Ruby Remote Debugging, and integration of the Java
      ME SDK 3.0. <br>
    </p>
    <p>NetBeans IDE 6.7 was released June 1, 2009. </p>
    <p>NetBeans 6.7.1<span style="font-weight: bold;"> update</span> was
      released July 27, 2009, with support for JavaFX 1.2, a GlassFish
      v3 Prelude upgrade, and performance enhancements in the Java
      editor and project scanning areas. </p>
    <ul>
      <li><a href="67/index.html">General Info about the NetBeans IDE
          6.7.1</a> </li>
      <li><a href="https://netbeans.org/downloads/6.7.1/index.html">Download
NetBeans






          IDE 6.7.1</a> </li>
    </ul>
    <h2>Older Releases</h2>
    <p> Please see the <a href="old.html">Release Archives</a> page. </p>
  </body>
</html>
