<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
  <title>NetBeans IDE 6.1 Information</title>
  <meta name="DESCRIPTION"
 content="Features of the NetBeans IDE 6.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.1 Information</h1>
<p> The NetBeans IDE is a modular, standards-based, integrated
development environment (IDE) written in the Java programming language.
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 can be used as a generic framework to build any kind of
application. </p>
<h2>Release Overview<br>
</h2>
<p>The NetBeans IDE 6.1 release provides several new features and enhancements, such as rich JavaScript
editing features, support for using the Spring web framework,
tighter MySQL integration, and an improved way of sharing libraries among dependent projects.
The acclaimed support for Ruby/JRuby has been enhanced with new editor
quick fixes, a Ruby platform manager, fast debug support for JRuby, and
many other new features and fixes.</p>
<p>
By popular demand, the bean pattern and JSF CRUD generation
features that were missing in the 6.0 release have returned. In
addition, early versions of new modules, such as ClearCase support, are
available as plugins.
</p><p>
This release also provides improved performance,
especially faster startup (up to 40%), lower memory consumption and
improved responsiveness while working with large projects. See below for a
list of features in this release.
</p>
<h2>Get the NetBeans IDE 6.1<br>
</h2>
<p> <a href="../../../downloads/index.html"><img
 alt="Download NetBeans IDE 6.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.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>
<tbody>
    <tr>
      <td style="vertical-align: top;">
      <ul>
        <li>JavaScript Support</li>
        <ul>
          <li>Semantic Highlighting</li>
          <li> Code Completion and Type Analysis</li>
          <li> Quick Fixes and Semantic Checks</li>
          <li>Refactoring</li>
        </ul>
      </ul>
      </td>
      <td align="center" valign="top"><a
 href="../../../images_www/screenshots/6.1/completion.png"><img
 style="border: 1px solid ; width: 210px; height: 132px;"
 src="../../../images_www/screenshots/6.1/completion-thumb.png"
 alt="JavaScript Code Completion, Click to enlarge" align="right"></a> </td>
    </tr>
    <tr>
      <td style="vertical-align: top;">
      <ul>
        <li>Performance Enhancements</li>
        <ul>
          <li>Up to 40% faster startup</li>
          <li>Smarter parsing so that code completion is faster</li>
          <li>Less memory consumption</li>
        </ul>
      </ul>
      </td>
       <td align="center" valign="top"><img
 src="../../../images_www/screenshots/6.1/pb1b.png"
 alt="Progress Bar"
 style="border: 1px solid ; width: 210px; height: 132px;" align="right">
      </td>
  </tr>
    <tr>
      <td style="vertical-align: top;">
      <ul>
        <li>Spring Framework Support</li>
        <ul>
          <li>Bundled Spring Framework 2.5 library</li>
          <li>Wizards for XML configuration files and Spring Web MVC
controllers</li>
          <li> Code completion of bean names and Java classes and
properties</li>
          <li> Spring Web MVC framework support in web project</li>
          <li><a href="http://wiki.netbeans.org/Spring">Learn More...</a></li>
        </ul>
      </ul>
      </td>
      <td align="center" valign="top"><a
 href="../../../images_www/screenshots/6.1/spring-completion.png"><img
 src="../../../images_www/screenshots/6.1/spring-completion-thumb.png"
 alt="Spring Code Completion, Click to enlarge"
 style="border: 1px solid ; width: 210px; height: 132px;" align="right"></a>
      </td>
    </tr>
    <tr>
      <td style="vertical-align: top;">
      <ul>
        <li>New MySQL Support in Database Explorer</li>
        <ul>
          <li>Register MySQL servers</li>
          <li>View, create, and delete databases</li>
          <li>Easy launch of the administration tool for MySQL </li>
        </ul>
      </ul>
      </td>
      <td align="center" valign="top"><a
 href="../../../images_www/screenshots/6.1/mysql-node.jpg"><img
 src="../../../images_www/screenshots/6.1/mysql-node-thumb.jpg"
 alt="MySQL  Node, Click to enlarge"
 style="border: 1px solid ; width: 210px; height: 132px;" align="right"></a>
      </td>
    </tr>
    <tr>
         <td style="vertical-align: top;">
      <ul>
        <li>Java Beans Support</li>
        <ul>
          <li>Bean Patterns in Navigator</li>
          <li>Generate Bean Property</li>
          <li>BeanInfo Editor</li>
        </ul>
      </ul>
      </td>
      <td align="center" valign="top"> <img alt="Java Bean Navigator"
 src="../../../images_www/screenshots/6.1/beannavigator.png"
 style="border: 1px solid ; width: 212px; height: 145px;" align="right">
      </td>
    </tr>
    <tr>
       <td style="vertical-align: top;">
      <ul>
        <li>JSF CRUD Generator</li>
        <ul>
          <li>Generate a JavaServer Faces CRUD application from entity classes
          <li>Supports all types of entity relationships (one-to-one, one-to-many, many-to-one, and many-to-many).
          <li>Supports all types of primary keys (single-column, composite, and generated).
        </ul>
      </ul>
      </td>
       <td align="center" valign="top"><a
 href="../../../images_www/screenshots/6.1/persistence-jsfpages.gif"><img
 src="../../../images_www/screenshots/6.1/persistence-jsf.jpg"
 alt="JSF , Click to enlarge"
 style="border: 1px solid ; width: 210px; height: 132px;" align="right"></a>
      </td>
    </tr>
    <tr>
      <td style="vertical-align: top;">
      <ul>
        <li>Ruby/JRuby Support</li>
        <ul>
          <li>Editor enhancements, including new hints and fixes</li>
          <li>Support for JRuby fast debugging</li>
          <li>Platform Manager</li>
          <li>Server and database integration improvements in Rails projects</li>
         </ul>
      </ul>
      </td>
       <td align="center" valign="top"><a
 href="../../../images_www/screenshots/6.1/ruby-attribute-hint3.png"><img
 src="../../../images_www/screenshots/6.1/ruby-attribute-hint4.jpg"
 alt="Ruby editor, Click to enlarge"
 style="border: 1px solid ; width: 210px; height: 132px;" align="right"></a>
      </td>
    </tr>
    <tr>
    <td style="vertical-align: top;">
      <ul>
        <li>Javadoc Code Completion</li>
        <ul>
          <li>Supports standard tags: &#64;param, etc.</li>
          <li>Code completion for parameters, exceptions, etc.</li>
        </ul>
      </ul>
      </td>
       <td align="center" valign="top"><a
 href="../../../images_www/screenshots/6.1/javadoc.png"><img
 src="../../../images_www/screenshots/6.1/javadoc-thumb.jpg"
 alt="Javadoc, Click to enlarge"
 style="border: 1px solid ; width: 210px; height: 132px;" align="right"></a>
</td>
    </tr>
    <tr>
    <td style="vertical-align: top;">
      <ul>
        <li>Support for Popular Web APIs</li>
       <ul>
          <li>Create mashup applications easily </li>
          <li>Drag and drop operations into a POJO, Servlet, JSP and RESTful web services and the NetBeans IDE generates all the code to access services</li>
          <li>Supports web APIs such as Google, Facebook, Yahoo, and YouTube</li>
        </ul>
      </ul>
      </td>
      <td align="center" valign="top"><a
 href="../../../images_www/screenshots/6.1/webapibig.png"><img
 src="../../../images_www/screenshots/6.1/webapithumg.jpg"
 alt="Web APIs, Click to enlarge"
 style="border: 1px solid ; width: 210px; height: 132px;" align="right"></a>
      </td>
    </tr>
    <tr>
    <td style="vertical-align: top;">
      <ul>
        <li>RESTful Web Service Support</li>
        <ul>
          <li>Build JSR311-compliant RESTful Web services using <a href="http://jersey.dev.java.net/what-is-jersey.html">Jersey</a>  </li>
          <li>Test your apps with the new REST Test Client</li>
          <li>Use wizards to create REST services from JPA entity classes and generate JavaScript client stubs from WADL </li>
        </ul>
      </ul>
      </td>
      <td align="center" valign="top"><a
 href="../../../images_www/screenshots/6.1/restviewbig.png"><img
 src="../../../images_www/screenshots/6.1/restviewthumb.jpg"
 alt="REST Support, Click to enlarge"
 style="border: 1px solid ; width: 210px; height: 132px;" align="right"></a>
      </td>
    </tr>
    <tr>
    <td style="vertical-align: top;">
      <ul>
        <li>Sharing Projects (AKA Sharable Libraries)</li>
       <ul>
          <li>Specify library dependencies using relative library paths (for default Java, Web, and all Java EE project types)</li>
          <li>More easily share projects with other members of your team, for instance when using version control systems </li>
          <li>Enable unattended builds for your projects</li>
        </ul>
      </ul>
      </td>
      <td align="center" valign="top"><a
 href="../../../images_www/screenshots/6.1/shared-libraries.png"><img
 src="../../../images_www/screenshots/6.1/shared-lib2.jpg"
 alt="Shared Libraries, Click to enlarge"
 style="border: 1px solid ; width: 210px; height: 132px;" align="right"></a>
      </td>
    </tr>
    <tr>
     <td style="vertical-align: top;">
      <ul>
        <li>New Plugins</li>
        <ul>
          <li>ClearCase version control</li>
          <li>AXIS Support</li>
          <li>SOAP UI Support</li>
          <li><a href="http://www.hibernate.org/">Hibernate Framework</a> Support (<a href="http://wiki.netbeans.org/Hibernate">Learn more...</a>)</li>
        </ul>
      </ul>
      </td>
      <td align="center" valign="top"><img
 src="../../../images_www/screenshots/6.1/axis-services.png"
 alt="AXIS wizard, Click to enlarge"
 style="border: 1px solid ; width: 210px; height: 104px;" align="right">
      </td>
    </tr>
    <tr>
     <td style="vertical-align: top;">
      <ul>
        <li>Java Mobility</li>
        <ul>
          <li>Mpowerplayer MIDP emulator for MIDP applications on MacOS X (available from the plugin center)</li>
          <li>SVG Composer for SVG Custom Components
          <li>Improved documentation and stability
        </ul>
      </ul>
      </td>
      <td align="center" valign="top"><img
 src="../../../images_www/screenshots/6.1/mpower-player.png"
 alt="mpowerPlayer for mac OS, Click to enlarge"
 style="border: 1px solid ; width: 210px; height: 150px;" align="right">
      </td>
    </tr>
    <tr>
      <td style="vertical-align: top;">
        <ul>
          <li>Previews of Post-6.1 Features</li>
          <ul>
            <li>Editor Support for PHP: Code completion, syntax highlighting, navigation, debugging, and much more</li>
            <li>JavaScript debugger </li>
            <li>JavaFX plugin</li>
          </ul>
        </ul>
         <p><br><br>
         For more details, visit the
         <a href="http://wiki.netbeans.org/wiki/view/NB61NewAndNoteWorthy">NetBeans
         IDE 6.1 New &amp; Noteworthy page</a>. </p>
      </td>
<td align="center" valign="top"><img
 src="../../../images_www/screenshots/6.1/php-projects.png" alt="PHP project, click to enlarge"
 style="border: 1px solid ; width: 210px; height: 42px;" align="right">
      </td>

    </tr>
  </tbody>
</table>
<br>
</body>
</html>
