<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!--
  Copyright 2009 Sun Microsystems, Inc. 
  All Rights Reserved.
-->
<html>
  <head>
    <title>NetBeans IDE 6.5.1 Release Information</title>
    <meta name="DESCRIPTION"
          content="Features of the NetBeans IDE 6.5.1
 Release">
    <link rel="stylesheet" type="text/css" href="../../../../netbeans.css">
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <a name="top"></a>
    <h1>NetBeans IDE 6.5.1 Release Information</h1>
    <p>
      The NetBeans IDE is an award-winning Integrated Development Environment
      available for Windows, Mac, Linux, and Solaris.
      The NetBeans project consists of an
      <a href="../../../../features/index.html">open-source IDE</a> and
      an <a href="../../../../features/platform/index.html">application platform</a>
      which enable developers to rapidly <a href="../../../../kb/index.html">create</a>
      web, enterprise, desktop, and mobile applications using the Java platform, as well as
      PHP, JavaScript and Ajax, Ruby and Ruby on Rails, Groovy, and C/C++.
      It is supported by a vibrant <a href="../../../../community/index.html">developer community</a>
      and offers a diverse selection of third-party <a href="http://plugins.netbeans.org">plugins</a>.
    </p>

    <h2>Release Overview</h2>
    <p>
      In addition to full support of all Java platforms (Java SE, Java EE, Java ME, and JavaFX),
      the NetBeans IDE 6.5.1 is the ideal tool for software development
      with PHP, Ajax and JavaScript, Groovy and Grails, Ruby and Ruby on Rails, and C/C++.
      The 6.5.1 release provides enhanced support for web frameworks (Hibernate, Spring, JSF, JPA),
      the GlassFish application server, and databases.
      Additionally it includes a new IDE-wide QuickSearch shortcut, a more
      user-friendly interface, and automatic Compile on Save.
    </p>
    <p>The NetBeans IDE 6.5.1 release is a minor <a href="relnotes.html">update</a>
    to <a href="../index.html">NetBeans IDE 6.5</a>.</p>

    <h2>Get the NetBeans IDE 6.5.1 </h2>

    <p> <a href="https://netbeans.org/downloads/index.html"><img
          alt="Download NetBeans IDE 6.5.1"
          src="../../../../images_www/v6/dl-nb-ide.gif" style="border: 0px solid ;"></a>
    </p>

    <h2>Documentation</h2>

    <p>Use the following documents to get started with NetBeans IDE 6.5.1.</p>
    <ul>
      <li><a href="relnotes.html">Release Notes</a></li>
      <li><a href="install.html">Installation Instructions</a></li>
    </ul>

    <h2>Feature Highlights</h2>

    <table width="100%">
      <tbody>
        <tr>
          <td style="vertical-align: top;">
            <p><b>PHP</b></p>
            <ul>
              <li>PHP Editor (Code completion, syntactic and semantic code highlighting)</li>
              <li>Support for heredoc notation and PHTML</li>
              <li>Debugging using Xdebug</li>
              <li>Generators for MySQL database code snippets</li>
            </ul>
          </td>
          <td align="center" valign="top"><img
              style="border: 1px solid ; width: 210px; height: 127px;"
              src="../../../../images_www/screenshots/6.5/php-code.png"
            alt="PHP Code Completion"> </td>
        </tr>
        <tr>
          <td style="vertical-align: top;">
            <p><b>JavaScript and Ajax</b></p>
            <ul>
              <li>JavaScript Debugging on FireFox & Internet Explorer
              <li>HTTP transaction monitoring
              <li>Improved JavaScript and CSS Editor</li>
              <li>JavaScript Library Manager incl Yahoo UI, Woodstock, jQuery, Dojo, Scriptaculous, Prototype libraries</li>
            </ul>
          </td>
          <td align="center" valign="middle"><img
              style="border: 1px solid ; width: 210px; height: 67px;"
              src="../../../../images_www/screenshots/6.5/javascript-quickfix.png"
            alt="JavaScript quickfixes popup in the editor"> </td>
        </tr>
        <tr>
          <td style="vertical-align: top;">
            <p><b>Java EE &amp; Web Development</b></p>
            <ul>
              <li>Enhanced support for Spring, Hibernate, JSF, JSF CRUD
              generator, JPA (Java Persistence API) </li>
              <li>Create RESTful web services from database tables or from
              JPA entities</li>
              <li>Drag and drop SaaS services into PHP files</li>
              <li>SQL Editor Improvements (code completion, save/recall
              queries, and more) </li>
              <li>Improved Eclipse project import and synchronization for Java Web projects</li>
              <li>Automatic Deploy on Save</li>
            </ul>
          </td>
          <td align="center" valign="top"><img
              style="border: 1px solid ; width: 210px; height: 115px;"
              src="../../../../images_www/screenshots/6.5/spring-web-app-refactor.png"
            alt="web application persistence"> </td>
        </tr>
        <tr>
          <td style="vertical-align: top;">
            <p><b>JavaFX</b></p>
            <ul>
              <li>Create, test, debug, profile, and deploy JavaFX projects</li>
              <li>JavaFX editor with syntax highlighting, source navigation,
              code completion, code folding, javadoc pop-ups, and error detection.</li>
              <li>Live preview of visual elements</li>
              <li>Code snippet palette for transformations, effects and animations</li>
            </ul>
          </td>
          <td align="center" style="vertical-align: top;"><img
              style="border: 0px solid ; width: 210px; height: 120px;"
              src="../../../../images_www/screenshots/6.5/javafx.png"
            alt="javafx video cube"> </td>
        </tr>
        <tr>
          <td style="vertical-align: top;">
            <p><b>Groovy and Grails</b></p>
            <ul>
              <li>Develop pure Groovy apps or use Groovy in Java SE projects </li>
              <li>Groovy editor with code completion, highlighting, and more </li>
              <li>Grails web application framework </li>
              <li>Open existing Grails applications without adding metadata</li>
            </ul>
          </td>
          <td align="center" valign="top"><img
              style="border: 1px solid ; width: 210px; height: 99px;"
              src="../../../../images_www/screenshots/6.5/groovy-editor.jpg"
            alt="Groovy code editor"> </td>
        </tr>
        <tr>
          <td style="vertical-align: top;">
            <p><b>Ruby and Rails</b></p>
            <ul>
              <li>New Test Runner interface for displaying test results </li>
              <li>Rake improvements: Rake Runner and a pre-generated Rake file</li>
              <li>Debugger: Conditional breakpoints and catchpoints</li>
              <li>Ruby projects accept JVM options from command line </li>
            </ul>
          </td>
          <td align="center" valign="top"><img
              style="border: 1px solid ; width: 210px; height: 130px;"
              src="../../../../images_www/screenshots/6.5/ruby.png" alt="Ruby code editor">
          </td>
        </tr>
        <tr>
          <td style="vertical-align: top;">
            <p><b>GlassFish v3 Prelude for Web Development</b></p>
            <ul>
              <li>Modular, OSGi based architecture </li>
              <li>Small footprint, fast startup and deployment</li>
              <li>Support for scripting, including JRuby
            </ul>
          </td>
          <td align="center" valign="middle"><img
              style="width: 96px; height: 96px;"
              src="../../../../images_www/screenshots/6.5/glassfish.jpg"
            alt="glassfish app server"> </td>
        </tr>
        <tr>
          <td style="vertical-align: top;">
            <p><b>C/C++</b></p>
            <ul>
              <li>Improved code completion, error highlighting, and semantic
              highlighting</li>
              <li>Call graph, Memory window </li>
              <li>Remote development</li>
              <li>Packaging of application as tar files, zip files, or SVR4
              packages</li>
            </ul>
          </td>
          <td align="center" valign="middle"><img
              style="border: 1px solid ; width: 210px; height: 134px;"
              src="../../../../images_www/screenshots/6.5/call-graph.png" alt="Call graph"><br>
            <br>
          </td>
        </tr>
        <tr>
          <td style="vertical-align: top;">
            <p><b>Java ME</b></p>
            <ul>
              <li>New project wizard for adding custom components to the
              Visual Designer Palette </li>
              <li>New SVG UI components in the enhanced SVG Composer enable
              rich UI design</li>
              <li>New Data Binding Custom Components in the Visual Designer
              Palette</li>
              <li>Upgraded obfuscation tool to ProGuard 4.2 and test
              framework to JMUnit 1.1.0</li>
            </ul>
          </td>
          <td align="center" valign="top"><img
              style="border: 1px solid ; width: 210px; height: 130px;"
              src="../../../../images_www/screenshots/6.5/mobility.png"
              alt="Java ME SVG palette"><br>
            <br>
          </td>
        </tr>
        <tr>
          <td style="vertical-align: top;">
            <p><b>Java Debugger</b></p>
            <ul>
              <li>New multi-threaded debugging with improved UI and work-flow</li>
              <li>Smart Step Into with method selection right inside expression</li>
              <li>Deadlock detection with visual indication</li>
            </ul>
          </td>
          <td align="center" valign="middle"><img
              style="border: 1px solid ; width: 210px; height: 149px;"
              src="../../../../images_www/screenshots/6.5/debugger.png"
              alt="swing treemodel view editor"><br>
            <br>
          </td>
        </tr>
        <tr>
          <td style="vertical-align: top;">
            <p><b>Java SE</b></p>
            <ul>
              <li>Automatic Compile on Save</li>
              <li>Improved Eclipse project import and synchronization</li>
              <li>Java Call Hierarchy</li>
              <li>Analyze Javadoc</li>
              <li>Swing GUI Builder can generate simple or fully qualified class names</li>
            </ul>
          </td>
          <td align="center" valign="middle"><img
              style="border: 1px solid ; width: 210px; height: 127px;"
              src="../../../../images_www/screenshots/6.5/gui-builder-class-names.png"
              alt="swing treemodel view editor"><br>
            <br>
          </td>
        </tr>
        <tr>
          <td style="vertical-align: top;">
            <p><b>IDE Tools and Usability</b></p>
            <ul>
              <li>CamelCase code completion </li>
              <li>Customize formatting settings per project</li>
              <li>One IDE-wide QuickSearch shortcut for files/symbols/types, IDE actions,
              options, and docs</li>
              <li>Support for Windows UNC paths (shared network folders) </li>
            </ul>
          </td>
          <td align="center" valign="top"><img
              style="border: 1px solid ; width: 210px; height: 123px;"
              src="../../../../images_www/screenshots/6.5/quick-search.gif"
            alt="netbeans ide quicksearch"> </td>
        </tr>
      </tbody>
    </table>
    <p>Learn more at the <a href="http://wiki.netbeans.org/NetBeans651">
    NetBeans IDE 6.5.1 development page</a>.</p>
  </body>
</html>
