<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<!--
  Copyright 2010, Oracle Inc. 
  All Rights Reserved.
-->

<html>
<head>
<link rel="stylesheet" type="text/css" href="../../../netbeans.css">
<link rel="stylesheet" type="text/css" media="print" href="../../../print.css">
<link rel="shortcut icon" href="https://netbeans.org/favicon.ico" type="image/x-icon" >
<title>NetBeans IDE 7.1.2 Installation Instructions</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" >
<meta name="description" content="Installation Instructions for NetBeans IDE 7.1">
<meta name="keywords" content="NetBeans, IDE, free, open source, install notes, developer, installer, NetBeans, NetBeans IDE, NetBeans installer, NetBeans development environment" >
<style type="text/css">
<!--
.style2 {color: #000000}
-->
</style>
</head>
<body>
<a name="top"></a>
<h1>NetBeans IDE 7.1.2 Installation Instructions</h1>
<div class="articledate" style="margin-left: 0px;">Last updated: <!-- #BeginDate format:Am1 -->April 25, 2012<!-- #EndDate --> </div>
<p>This document describes how to install NetBeans IDE 7.1.2 on your system. Please see the NetBeans IDE 7.1.2 Release Notes for information about <a href="relnotes.html#system_requirements">supported operating systems and hardware configurations</a> for the IDE. To learn about the new features included in this release of the IDE see the <a href="index.html">NetBeans IDE 7.1.2 Release Information</a> page.</p>

<h2>Contents</h2>
<ul>
<li><a href="#requiredsoftware" title="Required Software">Required Software</a></li>
<li><a href="#downloadoptions" title="Installer Download Options">Installer Download Options</a></li>
<li><a href="#customizeinstall" title="Customizing Your Installation">Customizing Your Installation</a></li>
<li><a href="#startdownload" title="Starting the Download">Starting the Download</a></li>
<li><a href="#installation" title="Installing the Software">Installing the Software</a><div>
<ul>
<li><a href="#install_windows">Microsoft Windows, Solaris OS, and Linux</a></li>
<li><a href="#install_mac">OS X</a> </li>
<li><a href="#install_zip">Platform-Independent Package</a> </li>
</ul>
</div></li>
<li><a href="#uninstallation" title="Uninstalling the Software">Uninstalling the Software</a><div>
<ul>
<li><a href="#uninstall_windows">Microsoft Windows</a></li>
<li><a href="#uninstall_sollinux">Solaris OS, Linux</a></li>
<li><a href="#uninstall_mac">OS X</a></li>
</ul>
</div></li>
<li><a href="#upgrading">Upgrading and Multiple Installation Support</a></li>
<li><a href="#troubleshooting" title="Troubleshooting">Trouble</a><a href="#troubleshooting" title="Troubleshooting">shooting</a></li>
<li><a href="#moreinformation" title="More Information">More In</a><a href="#moreinformation" title="More Information">formation</a></li>
</ul>
<h2><a name="requiredsoftware" id="requiredsoftware"></a>Required Software</h2>
<p>The Java SE Development Kit (JDK) 6 Update 26 or later is required to install the NetBeans IDE. The 7.1.2 version of the IDE can not be installed using JDK 5.0. You can download the latest update of JDK 6 at <a href="http://www.oracle.com/technetwork/java/javase/downloads/index.html" target="_blank">http://www.oracle.com/technetwork/java/javase/downloads</a>.</p>
<p> The PHP and C/C++ NetBeans bundles only require the Java Runtime Environment (JRE) 6 to be installed and run. However, if you are planning to use any of the Java features, you need JDK 6 or JDK 7. </p>
<p>The JavaFX 2.1 SDK is required to use JavaFX 2.1 features in the NetBeans IDE 7.1.2. You can download the JavaFX 2.1 SDK from <a href="http://www.oracle.com/technetwork/java/javafx/downloads/index.html" target="_blank">http://www.oracle.com/technetwork/java/javafx/downloads/index.html</a>.</p>
<p align="center"><a href="#top">top</a></p>
<h2><a name="downloadoptions" id="downloadoptions"></a>Installer Download Options</h2>
<p>On the NetBeans IDE <a href="http://download.netbeans.org/netbeans/7.1/rc2/" target="_blank">Download page</a>, you can obtain one of several installers, each of which contains the base IDE and additional tools.  </p>
<p>The following installers are available: </p>
<ul>
   <li><b>Java SE</b>. Supports all standard Java SE development features as well as support for NetBeans RCP development platform and JavaFX 2.1 SDK.</li>
   <li><b>Java EE</b>. Provides tools for developing Java SE and Java EE  applications as well as support for NetBeans RCP development platform and JavaFX 2.1 SDK. This download option also includes GlassFish Server Open Source Edition 3.1.2, and Apache Tomcat 7.0.22 software. </li>
   <li><b>C/C++</b>. Supports development in the C, C++, Qt, Fortran and Assembly languages. </li>
   <li><b>PHP</b>. Provides tools for PHP 5.x development, Zend and Symfony Framework support.</li>
   <li><b>All. </b> This is a full download option, which contains all the runtimes and technologies available for the NetBeans IDE.  </li>
</ul>
<p align="center"><a href="#top">top</a></p>
<h2><a name="customizeinstall"></a>Customizing Your Installation</h2>
<p>If you download the <b>All</b> download option, you can choose exactly what tools and runtimes to install. Click Customize at the Welcome page of the installer and select the features that you want to use. For more information, see <a href="#installation" title="Installing the Software">Installing the Software</a>.</p>
<p>If you want to add functionality to your NetBeans IDE configuration, use the NetBeans Plugin Manager. For example, assume that you start out by downloading and installing the PHP pack. You then decide that you want to try out the C/C++ functionality. To do this, go to the NetBeans Plugin Manager from the IDE (choose Tools &gt; Plugins) and add the C/C++ pack to your existing installation.</p>
<p>There are several important notes about installation and configuration of some NetBeans IDE features: </p>
<ul>
  <li>Apache Tomcat 7.0.22 is included in the <b>Java EE</b> and <b>All</b> download options but it is not installed by default from either of these options. To install Apache Tomcat, select the appropriate option below:
    <ul> 
  <li>from the <b>Java EE</b> download, launch the installer and select the Apache Tomcat 7.0.22 checkbox at the Welcome page;</li>
  <li>from the <b>All</b> download, launch the installer and select Apache Tomcat 7.0.22 in the Customize Installation dialog box.</li>
  </ul></li>

  <li>For C/C++ development (applicable for the <b>C/C++</b> and <b>All</b> downloads), you need to additionally install compilers and tools. For more information, refer to the <a href="cpp-setup-instructions.html">Configuring the NetBeans IDE for C/C++/Fortran</a> document. </li>
  <li>To enable JavaFX 2.1 support in the NetBeans IDE 7.1.2 release, refer to the <a href="../../../kb/docs/java/javafx-setup.html" target="_blank">Setting Up NetBeans IDE With JavaFX 2</a> document.</li>
  <li>For Mac OS X, you can customize the NetBeans IDE installation from the <b>All</b> download. The IDE installation from <b>Java SE</b>, <b>Java EE</b>, <b>C/C++</b>, and <b>PHP</b> downloads cannot be customized. </li>
  <li>You can also download <a href="#install_zip">a platform-independent zip file</a> and run the NetBeans IDE executable file. Note that the GlassFish Server Open Source Edition and Apache Tomcat are only available with platform-specific installers. </li>
  <li>To make sample project templates unreachable in the NetBeans IDE installation, see the <a href="http://wiki.netbeans.org/FaqHideSampleProjects">Hide Sample Projects FAQ</a> page.</li>
  <li> If you  download and install a patch for Netbeans IDE 7.1, the updated IDE will be labeled as NetBeans 7.1 (not 7.1.2). To upgrade both Java ME SDK 3.0 and Glassfish 3.1.1, run the Netbeans IDE 7.1.2 installer.</li>
</ul>
<p align="center"><a href="#top">top</a></p>
<h2><a name="startdownload" id="startdownload"></a>Starting the Download</h2>

<ol>
<li>Go to <a href="http://download.netbeans.org/netbeans/7.1.1/" target="_blank"> <strong>http://download.netbeans.org/netbeans/7.1.2</strong></a></li>
<li>In the upper right area of the page, select the language and platform from the drop-down list. 
  You can also choose to download and use the platform-independent zip file. </li>
<li>Click the Download button for the download option that you want to install.</li>
<li>Save the installer file to your system.</li>
</ol>
<p align="center"><a href="#top">top</a></p>
<h2><a name="installation"></a>Installing the Software</h2>

<p>Follow the instructions in this section to install the IDE on your system. These installation instructions apply to all supported platforms. For the list of supported platforms and system requirements, see the <a href="relnotes.html#system_requirements">release notes</a>. </p>
<h3><a name="install_windows" id="install_windows">Microsoft Windows, Solaris OS, and Linux</a></h3>
<p><b>To install the software:</b></p>
  <ol>
    <li>After the download completes, run the installer. 
   <ul>
    <li>For Windows, the installer executable file has the <tt>.exe</tt> extension. Double-click the installer file to run it. </li>
    <li>For Solaris and Linux platforms, the installer file has the <tt>.sh</tt> extension. For these platforms, you need to make the 
    installer files executable by using the following command: <tt>chmod +x &lt;<i>installer-file-name</i>&gt;</tt></li>
   </ul>
  </li>
    <li>If you downloaded the <b>All</b> bundle, you can customize your installation. Perform the following steps at the Welcome page of the installation wizard:
      <ol type="a">
         <li>Click Customize.</li>
         <li>In the Customize Installation dialog box, make your selections.</li>
         <li>Click OK.</li>
      </ol>
    </li>
     <li>At the Welcome page of the installation wizard, click Next.</li>
     <li>At the License agreement page, review the license agreement, click the acceptance check box, and click Next.</li>
	 <li>At the JUnit License Agreement page, decide if you want to install JUnit and click the appropriate option, click Next.</li>
     <li>At the NetBeans IDE installation page, do the following:
       <ol type="a">
      <li>Accept the default installation directory for the NetBeans IDE or specify another directory.
         <p><b>Note:</b> The installation directory must be empty and the user profile you are using to run the installer must have 
         read/write permissions for this directory.</p></li>
      <li>Accept the default JDK installation to use with the NetBeans IDE or select a different installation from the drop-down list.
          If the installation wizard did not find a compatible JDK installation to use with the NetBeans IDE, your JDK is not installed 
          in the default location. In this case, specify the path to an installed JDK and click Next, or cancel the current installation. 
          After installing the required JDK version you can restart the installation.</li>
       </ol></li>
   <li>If the GlassFish Server Open Source Edition 3.1.2 installation page opens, accept the default installation directory or specify another installation location. </li>
   <li>If you are installing Apache Tomcat, on its installation page, accept the default installation directory or specify another installation location. Click Next.</li>
   <li>At the Summary page, verify that the list of components to be installed is correct and that you have adequate space on your system for the installation.</li>
   <li>Click Install to begin the installation.</li>
   <li>At the Setup Complete page, provide anonymous usage data if desired, and click Finish.</li>
  </ol>
<p class="notes"><b>Note:</b> If you encounter problems successfully completing the software installation, see <a href="#troubleshooting">Troubleshooting</a> for descriptions and suggested workarounds for unresolved issues that could affect the installation process. </p>
<h3><a name="install_mac" id="install_mac">OS X</a></h3>
<p><b>To install the software:</b></p>
<ol>
  <li>After the download completes, run the installer. The installer file has the <tt>.dmg</tt> extension. </li>
  <li>On the panel that opens click the package icon. The package has the <tt>.mpkg</tt> extension. The installation wizard starts.</li>
  <li>At the Welcome page of the installation wizard, click Continue.</li>
  <li>Review the license agreement and click Continue. Click Accept in the pop-up window to accept the license.</li>
  
  <li>At the Select a Destination page, select the drive and click Continue. </li>
  <li>If you downloaded the <b>All</b> bundle, you can customize your installation. On the last installation wizard panel, press the Customize button in the bottom left-hand side of the panel. The tree of products is displayed.</li>
  <li>Select the products you want to install.</li>
  <li>Enter the administrator's name and password for your system and click OK to begin the installation.</li>
</ol>

<h3><a name="install_zip" id="install_zip">Platform-Independent Package </a></h3>
<p><b>To run the software:</b></p>
<ol>
  <li>After the download of the platform-independent ZIP file completes, extract it to any folder on your system. </li>
  <li>Run the executable file located in the <tt>netbeans/bin</tt> directory. </li>
  <li>Accept the License Agreement. </li>
  <li>At the JUnit License Agreement page, decide if you want to install JUnit and click the appropriate option, click Next. The NetBeans IDE installation starts. </li>
</ol>
<p><span class="notes"><b>Note</b>: If a compatible JDK installation cannot be found, you might need to manually add a path to the 
JDK installation directory by doing the following:</span></p>
<ol type="a">
  <li>Open the <tt>netbeans.conf</tt> file located in the <tt>netbeans/etc</tt> directory in a text editor.</li>
  <li>Enter the location of a compatible JDK installation for the <tt>netbeans_jdkhome</tt> option. The default location in Windows is <tt>C:\Program Files\Java\jdk1.7.0_03</tt>.</li>
  <li>Save the <tt>netbeans.conf</tt> file and run the  executable file in the <tt>netbeans/bin</tt> directory.</li>
</ol>

<p><span class="notes"><b>Note</b>: The GlassFish Server Open Source Edition and Apache Tomcat are available only with platform-specific installers.</span></p> 
<p><span class="notes"><b>Note</b>: To use the GlassFish Server Open Source Edition and/or Apache Tomcat that are already installed on your machine, in the NetBeans IDE, click <tt>Servers</tt> on the
<tt>Tools</tt> menu.  This displays the Add Server Instance Wizard which helps to register an instance of the
required web server with the NetBeans IDE.
</span></p>

<p align="center"><a href="#top">top</a></p>
<h2><a name="uninstallation">Uninstalling the Software</a></h2>
<p>Follow the instructions in this section to uninstall the IDE on your system. These uninstallation instructions apply to all supported platforms. For the list of supported platforms, see the <a href="relnotes.html">release notes</a>.</p>
<div>
<h3><a name="uninstall_windows">Microsoft Windows</a></h3>
<p>If necessary, you can uninstall the NetBeans IDE, the GlassFish Server Open Source Edition 3.1.2, and Apache Tomcat using the following procedures.</p>
<p><b>To uninstall the IDE</b>:</p>
<ol>
  <li>Shut down the IDE.  </li>
  <li>From the Control Panel, select Add or Remove Programs, then select NetBeans IDE 7.1.2 and click Remove.</li>
  <li>To uninstall GlassFish and Tomcat together with the IDE, at the Summary page make sure that the correct versions are listed and check the appropriate checkboxes.</li>
  <li>Check the NetBeans user directory checkbox if you want to remove it together with the  IDE, and click Uninstall. </li>
  <li>At the Summary page, click Uninstall.  </li>
  <li>After uninstallation completes, click Finish.</li>
</ol>
<p><b>To uninstall the GlassFish Server Open Source Edition 3.1.2: </b></p>
<ol>
  <li>Shut down the IDE.</li>
  <li>From the Control Panel, select Add or Remove Programs, then select GlassFish Server Open Source Edition 3.1.2 and click Remove.</li>
</ol>
<p><b>To uninstall Apache Tomcat: </b></p>

<ol>
  <li>Shut down the IDE.</li>
  <li>From the Control Panel, select Add or Remove Programs, then select Apache Tomcat 7.0.22 and click Remove.</li>
</ol>
</div>
<div>
<h3><a name="uninstall_sollinux">Solaris OS, Linux</a></h3>
<p>If necessary, you can uninstall the NetBeans IDE, the GlassFish Server Open Source Edition 3.1.2, and Apache Tomcat using the following procedures.</p>
<p><b>To uninstall the IDE</b>:</p>

<ol>
  <li>Shut down the IDE.</li>
  <li>In the IDE installation directory, run the <tt>uninstall.sh</tt> file. </li>
  <li>To uninstall GlassFish and Tomcat together with the IDE, at the Summary page make sure that the correct versions are listed and check the appropriate checkboxes. </li>
  <li>At the Summary page, click Uninstall. 
  </li>
  <li>After uninstallation completes, click Finish.</li>
</ol>
<p><b>To uninstall GlassFish Server Open Source Edition 3.1.2</b>:</p>
<ol>
  <li>Shut down the IDE.</li>
  <li>Locate the application server installation directory.
  <p class="notes"><b>Note</b>: The default installation location is different depending on the type of installation and the platform. The following table shows the default application server installation directory for various platforms.</p>

  <table>
    <tbody>
        <tr class="tblheader">
            <th width="107">Platform</th>
            <th width="130">Installing As...</th>
			<th width="264">GlassFish 3.1.2 Installation</th>
        </tr>
        <tr class="tbltd0">
          <td>Windows</td>
          <td>user with admin rights</td>
          <td><tt>%ProgramFiles%\glassfish-3.1.2</tt></td>
        </tr>
        <tr class="tbltd1">
          <td>Windows</td>
          <td>user</td>
          <td><tt>%USERPROFILE%\glassfish-3.1.2</tt></td>
        </tr>
        <tr class="tbltd0">
            <td>Solaris&nbsp;OS&nbsp;</td>
            <td>root</td>
			 <td><tt>/opt/glassfish-3.1.2</tt></td>
        </tr>
        <tr class="tbltd1">

            <td>Solaris&nbsp;OS, Linux</td>
            <td valign="top">user</td>
			<td valign="top"><tt>~/glassfish-3.1.2</tt></td>
        </tr>
        <tr class="tbltd0">
            <td>Linux</td>
            <td>root</td>
			<td><tt>/usr/local/glassfish-3.1.2</tt></td>
        </tr>
    </tbody>
</table>
  </li>
  <li>In the application server installation directory, run the <tt>uninstall.sh</tt> file.</li>

  <li>At the Summary page, click Uninstall.
  </li>
  <li>After uninstallation completes, click Finish.</li>
</ol>
<p><b>To uninstall Apache Tomcat: </b></p>
<ol>
  <li>Shut down the IDE.</li>

  <li>Locate the Apache Tomcat installation directory. 
    <p class="notes"><b>Note</b>: The default installation location varies depending on the type of installation and the platform. The following table shows the default application server installation directory for different platforms.</p>

  <table>
    <tbody>
        <tr class="tblheader">
            <th width="107">Platform</th>
            <th width="130">Installing As...</th>
			<th width="496">Apache Tomcat 7.0.22 Installation</th>
        </tr>
        <tr class="tbltd0">
          <td>Windows</td>
          <td>user with admin rights</td>
          <td><tt>%ProgramFiles%\Apache Software Foundation\Apache Tomcat 7.0.22</tt></td>
        </tr>
        <tr class="tbltd1">
          <td>Windows</td>
          <td>user</td>
          <td><tt>%USERPROFILE%\Apache Software Foundation\Apache Tomcat 7.0.22</tt></td>
        </tr>
        <tr class="tbltd0">
            <td>Solaris&nbsp;OS&nbsp;</td>
            <td>root</td>
			 <td><tt>/opt/apache-tomcat-7.0.22</tt></td>
        </tr>
        <tr class="tbltd1">

            <td>Solaris&nbsp;OS, Linux</td>
            <td valign="top">user</td>
			<td valign="top"><tt>~/apache-tomcat-7.0.22</tt></td>
        </tr>
        <tr class="tbltd0">
            <td>Linux</td>
            <td>root</td>
			<td><tt>/usr/local/apache-tomcat-7.0.22</tt></td>
        </tr>
    </tbody>
</table>
  </li>
  
  <li>In the application server installation directory, run the <tt>uninstall.sh</tt> file.  </li>
  <li>At the Summary page, click Uninstall. </li>
  <li>After uninstallation completes, click Finish</li>
</ol>
</div>

<div>
<h3><a name="uninstall_mac" id="uninstall_mac">OS X</a></h3>
<p><b>To uninstall the IDE and application server</b>:</p>
<ol>
  <li>Shut down the software.</li>
  <li>Drag the program folders or files to the Trash.    
  Note that the default location for the IDE and application server is <tt>/Applications/NetBeans/</tt>.  </li>
</ol>
</div>

<div>
<h3><a name="uninstall_zip" id="uninstall_zip">Platform-Independent Package</a></h3>
<p>To uninstall the IDE files, follow the steps described in the <a href="#clean">Cleaning Up After Incomplete Installations</a> section of this document. </p>
</div>

<p align="center"><a href="#top">top</a></p>

<h2><a name="upgrading"></a>Upgrading and Multiple Installation Support</h2>
<p>Multiple installations of NetBeans IDE 5.x,  6.x, and 7.x can coexist with NetBeans IDE 7.1.2 on the same system. You do not have to uninstall  the earlier versions in order to install or run NetBeans IDE 7.1.2. </p>
<p>If you have an existing installation of NetBeans IDE you can choose whether or not to import the user settings from the existing user directory when you run NetBeans IDE 7.1.2  for the first time.</p>
<p><span class="notes"><b>Note</b>: Incremental version upgrades of the IDE cannot be performed at this time. To upgrade to the most recent version you must download the latest installer.</span></p>
<p align="center"><a href="#top">top</a></p>
<h2><a name="troubleshooting" id="troubleshooting"></a>Troubleshooting</h2>
<div>
<h3>About the Installer Working Directory</h3>
<p>The installer stores data about installation sessions in the installer working directory. Examples of this data are the list of components installed on your system, installation log messages, and registry data. </p>

<p>The default location for the installer working directory is <tt>%USERPROFILE%\.nbi</tt> on Windows and <tt>~/.nbi</tt> on other platforms. The log subdirectory contains the installation log files. </p>
</div>
<div>
<h3><a name="clean"></a>Cleaning Up After Incomplete Installations</h3>
<p>After incomplete or unsuccessful installations, you might need to clean up your system from previous installations. </p>
<p><b>For Microsoft Windows, Solaris OS, and Linux:</b></p>
<ol>

  <li>Delete the installer working directory.</li>
  <li>Delete the installation directories of the IDE and the GlassFish application server.</li>
  <li>On the Windows platform, delete all <tt>nbi*</tt> registry entries from the following registry keys: 
    <tt>HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall</tt> 
    <tt>HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall</tt> </li>

</ol>
<p><b>For OS X:</b></p>
<ul>
  <li>Drag the program folders or  files to the Trash. </li>
</ul>
</div>
<div>
<h3>Disabling Some Software Before Installation</h3>
<p>It is better to disable firewall, antivirus, and monitoring applications before you start installation. Some of these applications can prevent IDE components from being configured correctly during the installation process. </p>
<p>For example, if you have the Logitech Process Monitor application (<tt>LVPrcSrv.exe</tt>) running on your system, switch it off before installation. </p>

</div>
<p align="center"><a href="#top">top</a></p>
<h2><a name="moreinformation"></a>More Information</h2>

<ul>
<li><a href="index.html" target="_blank">NetBeans IDE 7.1.2 Release Information</a></li>
<li><a href="relnotes.html" target="_blank">NetBeans IDE 7.1.2 Release Notes</a></li>
<li><a href="http://wiki.netbeans.org/NetBeansUserFAQ#Installation" target="_blank">NetBeans IDE Installation FAQ</a></li>
</ul>
<div class="feedback-box"><a href="https://netbeans.org/about/contact_form.html?to=3&subject=Feedback:%20NetBeans%20IDE%207.1.2%20Installation%20Instructions">Send Us Your Feedback</a>
</div>
<br style="clear:both;">
<p align="center"><a href="#top">top</a></p>
</body>
</html>
