<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>


  <head>
    <title>Importar Proyectos de Eclipse en el IDE NetBeans - Tutorial</title>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" >

    <meta name="description"
          content="Overview of Eclipse Import features in NetBeans IDE">
    <link rel="stylesheet" href="../../../netbeans.css">

  </head>


  <body>
    <h1>Importar proyectos de Eclipse en el IDE NetBeans</h1>

    <p><b>Contenidos</b></p>
    <img  src="../../../images_www/articles/69/netbeans-stamp-69-70.png" class="stamp" width="114" height="114" alt="Content on this page applies to NetBeans IDE 6.5" title="Content on this page applies to the NetBeans IDE 6.5">
    <ul class="toc">
      <li><a href="#intro" title="Asistente para importar proyectos de Eclipse">Asistente para importar proyectos de Eclipse</a></li>
      <li><a href="#how-it-works" title="¿C&oacute;mo funciona el Asistente para importar?">¿C&oacute;mo funciona el Asistente para importar?</a></li>
      <li><a href="#import" title="Importar y Configurar Proyectos">Importar y Configurar Proyectos</a></li>
      <li><a href="#build" title="Construcci&oacute;n y Ejecuci&oacute;n de un Proyecto">Construcci&oacute;n y Ejecuci&oacute;n de un Proyecto</a></li>
      <li><a href="#metadata" title="Archivos del Proyecto de NetBeans">Archivos del Proyecto de NetBeans</a></li>
      <li><a href="#versioning" title="Consideraciones sobre el control de versiones">Consideraciones sobre el control de versiones</a></li>
      <li><a href="#resynch" title="Resincronizar un proyecto">Resincronizar un proyecto</a></li>
      <li><a href="#problems" title="Resolviendo problemas de importaci&oacute;n">Resolviendo problemas de importaci&oacute;n</a></li>
    </ul>
    <p><b>Para completar este tutorial, usted necesita los siguientes recursos y software.</b></p>

    <table>
      <tbody>
        <tr>
          <th class="tblheader" scope="col">Software o recursos</th>
          <th class="tblheader" scope="col">Versi&oacute;n requerida</th>
        </tr>
        <tr>
          <td class="tbltd1"><a href="https://netbeans.org/downloads/index.html">NetBeans IDE</a></td>
          <td class="tbltd1">versi&oacute;n 6.5</td>
        </tr>
        <tr>
          <td class="tbltd1"><a href="http://www.oracle.com/technetwork/java/javase/downloads/index.html">Java Development Kit (JDK)</a></td>
          <td class="tbltd1">versi&oacute;n 6 or<br>
          versi&oacute;n 5</td>
        </tr>
      </tbody>
    </table>
    <a name="intro"/><h2>Asistente para importar proyectos de Eclipse</h2>
    <p>El IDE NetBeans 6.5 introduce un mejor asistente para importar proyectos de Eclipse. Este
      asistente le permite utilizar NetBeans para trabajar con Java en aplicaciones de escritorio y proyectos web
      que se han creado en Eclipse y MyEclipse.
    </p>

    <p>Despu&eacute;s de crear un proyecto en NetBeans desde un proyecto de Eclipse, puede trabajar
    de las siguientes maneras:</p>
    <ul>
      <li>Use NetBeans dentro de un proyecto de equipo donde otros desarrolladores est&aacute;n usando Eclipse.
      </li>
      <li>Use NetBeans y Eclipse sobre un proyecto intercambiable.
      </li>
      <li>Probar NetBeans en un proyecto existente que se cre&oacute; en Eclipse.  </li>
    </ul>
    <a name="how-it-works"/><h2>¿C&oacute;mo funciona el Asistente para importar?</h2>
    <p>	Al importar un proyecto, el IDE analiza los metadatos del proyecto de Eclipse y, a continuaci&oacute;n,
      NetBeans crea un proyecto basado en esos metadatos. Importar un proyecto
    no impone cambios en la estructura del proyecto de Eclipse, de modo que no interfiere en la forma en que Eclipse trabaja.</p>
    <p>Una vez que tenga importado el proyecto, puede usar los IDEs NetBeans y Eclipse, uno o ambos para
      editar, crear, ejecutar, depurar, y el perfil del proyecto.
      Si usted hace un cambio de configuraci&oacute;n en el proyecto de Eclipse, puede resincronizar
      el proyecto en NetBeans. Esto le permite trabajar en proyectos, incluso en NetBeans
      si todo el mundo en su equipo est&aacute; trabajando con Eclipse.
    La construcci&oacute;n de camino que se estableci&oacute; en Eclipse sigue siendo el camino maestro de la construcci&oacute;n para el proyecto.</p>

    <h2><a name="import"/>Importar y Configurar Proyectos</h2>

    <p><b>Para importar a NetBeans un proyecto de Eclipse:</b></p>
    <ol>
      <li>Aseg&uacute;rese de que tiene copia del proyecto que desea importar en el sistema.
        <p>Normalmente, este proyecto ya estar&iacute;a en el espacio de trabajo de Eclipse en su
      sistema.</p></li>
      <li>Seleccione File &gt; Import Project &gt; Eclipse Project.</li>
      <li>En la p&aacute;gina del asistente del espacio de trabajo , seleccione Import Projects del espacio de trabajo
        y, a continuación, especificar el espacio de trabajo.
        <img src="../../../images_www/articles/71/java/import-eclipse/eclipse-import-workspace-location.png" height="354" width="604"
             alt="Imagen que muestra la ubicaci&oacute;n de trabajo de la p&aacute;gina del asistente de importaci&oacute;n de proyectos de Eclipse
             con la importaci&oacute;n de proyectos de trabajo y seleccione el bot&oacute;n de ubicaci&oacute;n especificada de trabajo de Eclipse
             ." class="margin-around">
      </li>
      <li>En los proyectos para importar la p&aacute;gina, seleccione los proyectos que desea
        importar. A continuación, seleccione una de estas dos opciones para el almacenamiento de los archivos dentro del proyecto de NetBeans:
        <ul>
          <li><b>NetBeans almacena los datos del proyecto dentro de las carpetas del proyecto de Eclipse. </b>
            NetBeans añade carpetas y archivos dentro de la carpeta de nivel superior del original
          proyecto.</li>
          <li><b>Crear proyectos importados de NetBeans en una ubicación diferente. </b>
            NetBeans utiliza las fuentes y las bibliotecas del proyecto de la carpeta original del proyecto Eclipse, pero crea una carpeta separada para contener
          los metadatos del proyecto de NetBeans y construir salidas.</li>
        </ul>
        <p>Normalmente, es mejor almacenar los datos del proyecto de NetBeans
          dentro de las carpetas de Eclipse. En la mayor&iacute;a de los casos, esto significa que los metadatos del proyecto de NetBeans
          se refieren a las fuentes y las bibliotecas con los mismos caminos que son utilizados por
          Eclipse. Por lo tanto, el acceso al proyecto mediante un sistema de control de versión
          en diferentes máquinas debería traducirse en un comportamiento similar
        tanto en NetBeans y Eclipse.</p>
        <p>Ver <a href="#metadata">Archivos del Proyecto de NetBeans</a>. A continuación una lista de archivos y
      carpetas que crea NetBeans.</p></li>
      <li>En la p&aacute;gina del Servidor, registrar cualquier servidor del cual tu proyecto necesite en el IDE NetBeans. (Esta p&aacute;gina no aparece si no es una importaci&oacute;n de aplicaciones web.)</li>
    </ol>

    <p>Despu&eacute;s de completar el asistente, pueden aparecer los siguientes cuadros de diálogo:</p>
    <ul>
      <li><b>Problemas de importaci&oacute;n.</b> Este cuadro de diálogo proporciona informaci&oacute;n acerca de las discrepancias
        entre la estructura del proyecto de Eclipse y NetBeans y señala
        acciones que puede que tenga que tomar para corregir las discrepancias.
        <p>Puede copiar la informaci&oacute;n de este cuadro de di&aacute;logo y pegarlo en otro lugar para su futura referencia.</p>
        <p>En la mayor&iacute;a de los casos, debe utilizar el proyecto del cuadro de di&aacute;logo Propiedades del proyecto para
          resolver esta cuestiones. Ver <a href="#problems">Resolviendo problemas para importar</a>
        gu&iacute;a para la soluci&oacute;n de los problemas m&aacute;s comunes.</p>
      </li>
      <li><b>Resolver Problemas de referencia.</b> Este cuadro de di&aacute;logo le advierte de un
        problema con una referencia de su proyecto de bibliotecas. Puede resolver este problema
        despu&eacute;s de quitar a este cuadro de di&aacute;logo haciendo clic derecho en el nodo del proyecto y
      seleccionar Resolver problemas de referencia.</li>
      <li><b>Resolver servidor desaparecido.</b>  Este cuadro de di&aacute;logo le advierte de que el
        proyecto no puede encontrar un servidor necesario. Puede resolver este problema
        despu&eacute;s de quitar a este cuadro de di&aacute;logo haciendo clic derecho en el nodo del proyecto y
      seleccionar Resolver servidor desaparecido.</li>
    </ul>
    <img src="../../../images_www/articles/71/java/import-eclipse/eclipse-import-issues.png" height="335" width="391"
         alt="Imagen que muestra el cuadro de di&aacute;logo Import Issues." class="margin-around">
    <p>Una vez completado el asistente y cerrado todos los cuadros de dialogo de la informaci&oacute;n superior,
      aparece el nodo del proyecto en la ventana del proyecto.
    </p>

    <img src="../../../images_www/articles/71/java/import-eclipse/eclipse-import-projects-window.png" height="134" width="309"
         alt="Imagen que muestra la ventana de proyectos despu&eacute;s que un proyecto se ha importado,
         incluyendo un nodo para el proyecto y sub nodos de las p&aacute;ginas web, archivos de configuraci&oacute;n de
         los recursos del servidor, src archivos y bibliotecas." class="margin-around">

    <p>Si se hace referencia en los metadatos del
      proyecto a los servidores u otros recursos que no puede resolver NetBeans,
      el nodo del proyecto aparecer&aacute; en rojo. Puede resolver estas referencias
      inmediatamente haciendo clic derecho en el nodo del proyecto y seleccionando la referencia
    Resolver problemas o servidor no encontrado.</p>
    <img src="../../../images_www/articles/71/java/import-eclipse/eclipse-import-resolve-reference.png" height="218" width="400"
         alt="Imagen que muestra el cuadro de di&aacute;logo resolver Referencias después que un proyecto ha
         sido importado." class="margin-around">
    <p>Para otros tipos de ajustes de configuraci&oacute;n del proyecto, se utiliza el
      Proyecto de cuadro de di&aacute;logo de Propiedades. Abrir el cuadro de di&aacute;logo de Propiedades del proyecto
    haciendo clic derecho en el nodo del proyecto y seleccionando Propiedades.</p>
    <p>Para mayor informaci&oacute;n sobre como configurar tu proyecto, ver
      <a href="project-setup.html#projects-configuring">Configuraci&oacute;n del Classpath y Otras Configuraciones del proyecto</a>
    en la creación, importación, y gu&iacute;a para configurar proyectos Java.</p>

    <h2><a name="build"/>Construcci&oacute;n y Ejecuci&oacute;n de un Proyecto</h2>

    <p>Una vez que haya importado en el proyecto de NetBeans, usted puede construir y ejecutar el
      proyecto. Todos los objetos creados a partir de NetBeans, los comandos crear y ejecutar se crean en las carpetas
      <code>build</code> y <code>dist</code>. NetBeans no sobreescribe las salidas creadas a partir de las acciones de Eclipe. Si el proyecto de Eclipse ya
      tiene las carpetas <code>build</code> y <code>dist</code> ,
      el proyecto de NetBeans crea las carpetas llamadas
    <code>nbbuild</code> y <code>nbdist</code> y usa estas para construir las salidas.</p>
    <p>Los siguientes son algunos de los comandos buid and run que esta disponibles desde el menu Run:</p>
    <ul>
      <li><b>Run Project.</b>  Test runs la aplicaci&oacute;n en el IDE.</li>
      <li><b>Clean and Build Project.</b> Borra el contenido de las carpetas <code>build</code>
        (o <code>nbbuild</code>) y <code>dist</code> (o <code>nbdist</code>)
        y reconstruye todas las salidas de los proyectos. Use el script build de NetBeans.
      Similar al comando Clean de Eclipse.</li>
      <li><b>Clean.</b> Borra el contendio de las carpetas de <code>nbbuild</code>
      y <code>nbdist</code>.</li>
      <li><b>Build.</b> Reconstruye las salidas de los proyectos. Si las carateristicas de compilar y salvar estan habilitadas,
        el comando Build es deshabilitado. Ver
      <a href="project-setup.html#building-compile-on-save">Compilar y Guardar </a> en la secci&oacute;n de Gu&iacute;as de Crear, Importar y Configurar Proyectos Java.</li>
    </ul>

    <p>Para obtener m&aacute;s informaci&oacute;n sobre la creaci&oacute;n y el funcionamiento de su aplicaci&oacute;n, as&iacute; como
      personalizar el proceso de construcci&oacute;n, v&eacute;ase
      <a href="project-setup.html">Crear, Importar y Configurar Proyectos Java</a>.
    </p>

    <h2><a name="metadata"/>Archivos del Proyecto de NetBeans</h2>

    <p>Despu&eacute;s de haber importado el proyecto, encontrar&aacute; las siguientes carpetas y archivos
    en su sistema:</p>
    <ul>
      <li>El archivo <code>build.xml</code> o <code>nb-build.xml</code>. El principal constructor del proyecto NetBeans.
        Puede personalizar este script de acuerdo a las necesidades
        de su proyecto. Por defecto, este archivo se llama <code>build.xml</code>.
        Si dicho archivo ya existe en la carpeta del proyecto, el script se llama
      <code>nb-build.xml</code>.</li>
      <li>El archivo <code>nbproject</code>. Contiene la mayor&iacute;a de los metadatos de los proyectos de NetBeans,
        incluidos los recursos que son llamados por los principales script de NetBeans. Si marca
        esta carpeta y el archivo <code>build.xml</code> o <code>nb-build.xml</code>
        en su sistema de control de versi&oacute;n, otros usuarios podr&aacute;n
        abrir el proyecto en NetBeans. Esta carpeta tambi&eacute;n contiene las carpeta <code> private </code>
        , que contiene los datos de su sistema. Esta carpeta no debe
        ser controlada por el sistema de control de versiones ya que su contenido puede variar
      entre los usuarios. Ver abajo <a href="#versioning">Consideraciones sobre el control de versiones</a>.</li>
      <li>La carpeta <code>nbbuild</code>. Al construir o ejecutar el proyecto de NetBeans,
      fuentes del proyecto son compilados en esta carpeta.</li>
      <li>La carpeta <code>nbdist</code>.Cuando cree el proyecto en NetBeans,
        la distribuci&oacute;n de resultados del proyecto se crean y se colocan en esta carpeta.
      Tales resultados podrían ser archivos JAR y los archivos WAR.</li>
    </ul>

    <a name="versioning"/><h2>Consideraciones sobre el control de versiones</h2>
    <p>Si el proyecto est&aacute; sacado de un sistema de control de versiones, <code>build</code> (o <code>nbbuild</code>),
      <code>dist</code> (o <code>nbdist</code>), y el <code>nbproject/private</code>
    las carpetas no deben comprobarse dentro del sistema de control de versiones. </p>
    <p>Si el proyecto
      es en virtud del CVS, Subversion, Mercurial o sistemas de control de versiones, el
      apropiado "ignorar" los archivos son creados o actualizados para estos directorios cuando
    el proyecto se importa.</p>
    <p class="notes">Aunque <code>nbproject/private</code> debe ser ignorado,
      <code>nbproject</code> deben ser chequeados dentro del sistema de control de versi&oacute;n.
      <code>nbproject</code> contiene los metadatos del proyecto que permite a otros usuarios
    abrir el proyecto en NetBeans sin necesidad de importar primero el proyecto.</p>

    <h2><a name="resynch"/>Resincronizar un proyecto</h2>

    <p>Características de sincronizaci&oacute;n de el proyecto importado. Si
      las clases en el Eclipse han cambiado desde que se importaron inicialmente, puede
      utilizar la caracter&iacute;stica de los proyectos de Eclipse, resincronizar para actualizar el classpath
    en el correspondiente proyecto de NetBeans.</p>
    <p>Proyecto de resincronizaci&oacute;n es una froma de proyectos de Eclipse a NetBeans.
      Si realiza cambios en la estructura del proyecto en NetBeans, esos cambios no son
      propagados al proyecto de Eclipse con la funci&oacute;n de resincronizaci&oacute;n.
      Si tiene intenci&oacute;n de mantener dos proyectos de Eclipse y NetBeans, utilizar el proyecto de Eclipse
    como el "maestro" del proyecto.</p>
    <p>El IDE tambi&eacute;n resincroniza automáticamente los proyectos si los cambios en la configuraci&oacute;n de
      Eclipse son ambiguos y no requieren de su entrada. Esta
      resincronizaci&oacute;n autom&aacute;tica se produce poco despu&eacute;s de abrir el proyecto.
      Si la resincronizaci&oacute;n requiere su entrada, tendr&aacute; que manualmente
    resincronizar el proyecto.</p>

    <!-- TODO add information on what gets synchronized-->
    <p><b>Para resincronizar manualmente proyectos de NetBeans con los proyectos de Eclipse:</b></p>
    <ul>
      <li>Seleccione File &gt; Import Project &gt; Resynchronize Eclipse Projects.</li>
    </ul>
    <p class="notes"><b>Notas:</b> Cuando resincroniza un proyecto, la resincronizaci&oacute;n
    se realiza en todos los proyectos que se han importado desde el espacio de trabajo.</p>


    <h2><a name="problems"/>Resolviendo problemas de importaci&oacute;n</h2>

    <p>Al importar un proyecto en NetBeans, puede haber algunas cosas que no se resuelven autom&aacute;ticamente en el IDE NetBeans.
      Para algunos de estos problemas,
      un elemento del menú, tales como resolver problemas de desapareci&oacute;n del servidor , aparece en el menú contextual para el proyecto.
      Otros problemas pueden ser resueltos
      en el cuadro de di&aacute;logo Propiedades del proyecto para la importaci&oacute;n de proyectos en el IDE NetBeans
    </p>
    <p>Aqu&iacute; figura una lista de los problemas comunes sobre importación y sus soluciones.</p>

    <table>
      <tr>
        <th class="tblheader" scope="col">Mensaje del Problema</th>
        <th class="tblheader" scope="col">Soluci&oacute;n</th>
      </tr>
      <tr>
        <td class="tbltd1">Resolviendo problemas de servidor no encontrado</td>
        <td class="tbltd1">Haga clic derecho en el nodo del proyecto y elija Resolver Problema de servidor.
        A continuaci&oacute;n, vaya al archivo de la carpeta que contiene el servidor.</td>
      </tr>
      <tr>
        <td class="tbltd1">Resolver Problemas de Referencia</td>
        <td class="tbltd1">Haga clic derecho en el nodo del proyecto y elija Resolver Problemas de referencia .
          A continuaci&oacute;n, vaya al archivo de la carpeta que contiene el recurso que
        es al que se refiere el proyecto.</td>
      </tr>
      <tr>
        <td class="tbltd1">Plataforma Eclipse para proyectos <i>ProjectName</i> no puede ser usado.
          Es un JRE, el proyecto de NetBeans requiere un JDK. NetBeans utilizar&aacute; la plataforma por defecto.
        </td>
        <td class="tbltd1">Si desea cambiar la plataforma que utiliza NetBeans
        para el proyecto, elija Herramientas &gt; Plataformas y especificar una plataforma diferente.</td>
      </tr>
      <tr>
        <td class="tbltd1">El Proyecto Eclipse  <i>ProjectName</i> reclama a utilizar el JDK de la "(1)" directorio. Sin embargo, este directorio no existe. NetBeans utilizar&aacute; la plataforma por defecto.
        </td>
        <td class="tbltd1">Si desea cambiar la plataforma que utiliza NetBeans
          para el proyecto, elija Herramientas &gt; Plataformas y especificar una plataforma diferente.
        </td>
      </tr>
      <tr>
        <td class="tbltd1">NetBeans no incluye soporte de fuentes de includes/excludes
          como Eclipse si lo hace. Ellos se fusionaron y se recomienda que
          usted compruebe en las propiedades del proyecto en la Fuente del panel.
        </td>
        <td class="tbltd1">En NetBeans, includes/excludes se declaran en un
          lugar para todo el proyecto. Para comprobar Includes/Excludes  en el proyecto
          de NetBeans , haga clic derecho en el nodo del proyecto y la ventana de Proyectos
          y seleccione Propiedades. En el cuadro de di&aacute;logo Propiedades del proyecto, seleccione la
          Fuentes de ficha y, a continuaci&oacute;n, haga clic en el bot&oacute;n Includes/Excludes
        .</td>
      </tr>
      <tr>
        <td class="tbltd1">La importaci&oacute;n ha fallado debido a <i>...</i>. M&aacute;s detalles se pueden encontrar en el archivo de registro del IDE
        .</td>
        <td class="tbltd1">Puede abrir el archivo de registro del IDE seleccionando Ver &gt; Log del IDE.</td>
      </tr>
      <tr>
        <td class="tbltd1">Tipo de proyecto desconocido -  no puede ser importado.</td>
        <td class="tbltd1">S&oacute;lo puede importar los siguientes tipos de proyectos de Eclipse:
          Java Project, Java Project from Existing Ant File, Static Web, Dynamic Web,
        and JPA Project.</td>
      </tr>
    </table>
    <!-- TODO link to a wiki with other troubleshooting info-->

    <!-- ======================================================================================= -->
    <br>
    <div class="feedback-box" ><a href="/about/contact_form.html?to=3&amp;subject=Feedback: Importing Eclipse Projects into NetBeans IDE">Send Feedback on This Tutorial</a></div>
    <br style="clear:both;" />
    <h2><a name="nextsteps"></a>Ver Tambi&eacute;n</h2>
    <ul>
      <li><a href="http://wiki.netbeans.org/NetBeansForEclipseUsers">NetBeans para Usuarios de Eclipse</a></li>
      <li><a href="project-setup.html">Crear, Importar, y Configurar Proyectos Java</a></li>
      <li><a href="../../trails/java-se.html">IDE B&aacute;sico y gu&iacute;a de aprendizaje programando Java</a></li>
      <li><a href="../../trails/matisse.html">Gu&iacute;a de aprendizaje de aplicaciones GUI Java</a></li>
      <li><a href="../../trails/web.html">Gu&iacute;a de aprendizaje de aplicaciones Web Java</a></li>
    </ul>
   
  </body>
</html>
