blob: 4d2c5d6166b47f332769f512b51268789f52aa2b [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved. -->
<!-- Use is subject to license terms.-->
<head>
<title>将 Eclipse 项目导入 NetBeans IDE - 教程</title>
<meta name="KEYWORDS" content="NETBEANS, TUTORIAL, GUIDE, USER, DOCUMENTATION">
<meta name="description"
content="Overview of Eclipse Import features in NetBeans IDE">
<link rel="stylesheet" href="../../../netbeans.css">
<meta HTTP-EQUIV="Content-Type" Content="text/html; charset=UTF-8"></head>
<body>
<a name="top"></a>
<h1>将 Eclipse 项目导入 NetBeans IDE</h1>
<p><b>目录</b></p>
<img alt="此页上的内容适用于 NetBeans IDE 6.9、7.0、7.1、7.2、7.3 和 7.4" class="stamp" src="../../../images_www/articles/72/netbeans-stamp-74-73-72.png" title="此页上的内容适用于 NetBeans IDE 6.9、7.0、7.1、7.2、7.3 和 7.4">
<ul class="toc">
<li><a href="#intro" title="导入 Eclipse 项目向导">导入 Eclipse 项目向导</a></li>
<li><a href="#how-it-works" title="导入向导的运行原理">导入向导的运行原理</a></li>
<li><a href="#import" title="导入和配置项目">导入和配置项目</a></li>
<li><a href="#build" title="构建和运行项目">构建和运行项目</a></li>
<li><a href="#metadata" title="NetBeans 项目文件">NetBeans 项目文件</a></li>
<li><a href="#versioning" title="版本控制注意事项">版本控制注意事项</a></li>
<li><a href="#resynch" title="重新同步项目">重新同步项目</a></li>
<li><a href="#problems" title="解决导入问题">解决导入问题</a></li>
<li><a href="#nextsteps" title="另请参见">另请参见</a></li>
</ul>
<p><b>要学完本教程,您需要具备以下软件和资源。</b></p>
<table>
<tbody>
<tr>
<th class="tblheader" scope="col">软件或资源</th>
<th class="tblheader" scope="col">要求的版本</th>
</tr>
<tr>
<td class="tbltd1"><a href="http://www.netbeans.org/downloads/index.html">NetBeans IDE</a></td>
<td class="tbltd1">版本 6.9、7.0、7.1、7.2、7.3 或 7.4 </td>
</tr>
<tr>
<td class="tbltd1"><a href="http://www.oracle.com/technetwork/java/javase/downloads/index.html">Java 开发工具包 (JDK)</a></td>
<td class="tbltd1">版本 6 或 7</td>
</tr>
</tbody>
</table>
<a name="intro"></a><h2>导入 Eclipse 项目向导</h2>
<p>在 NetBeans IDE 中,增强了对导入 Eclipse 项目的支持。导入 Eclipse 项目向导可帮助您使用 NetBeans 处理在 Eclipse 和 MyEclipse 中创建的 Java 桌面和 Web 应用程序项目。</p>
<p>从 Eclipse 项目创建 NetBeans 项目之后,您可以采用以下工作方式:</p>
<ul>
<li>使用 NetBeans 操作团队项目,而其他开发人员使用的是 Eclipse。
</li>
<li>交互使用 NetBeans 和 Eclipse 操作项目。
</li>
<li>使用 NetBeans 操作在 Eclipse 中建立的现有项目。 </li>
</ul>
<p class="align-center"><a href="#top">返回页首</a></p>
<a name="how-it-works"></a><h2>导入向导的运行原理</h2>
<p>当导入项目时,IDE 会分析 Eclipse 项目元数据,然后根据这些元数据来创建 NetBeans 项目。项目导入不会对 Eclipse 项目结构进行更改,因此它不会干扰项目在 Eclipse 中的运行方式。</p>
<p>导入项目之后,您可以使用 NetBeans 或 Eclipse IDE 来编辑、构建、运行、调试和分析项目。如果您对 Eclipse 项目的配置进行了更改,那么可以重新同步 NetBeans 项目。这允许您在其他团队成员使用 Eclipse 的情况下使用 NetBeans 来操作项目。您在 Eclipse 中设置的构建路径仍然是项目的主构建路径。</p>
<p class="align-center"><a href="#top">返回页首</a></p>
<h2><a name="import"></a>导入和配置项目</h2>
<p><b>将 Eclipse 项目导入 IDE:</b></p>
<ol>
<li>确保您希望导入到系统中的项目有自己的副本。
<p>通常,该项目应该已经在您系统上的某个 Eclipse 工作区中。</p></li>
<li>选择 "File"(文件)> "Import Project"(导入项目)> "Eclipse Project"(Eclipse 项目)。</li>
<li>在向导的 "Workspace Location"(工作区位置)页上,选择 "Import Projects from Workspace"(从工作区导入项目)单选按钮,然后指定工作区位置。单击 "Next"(下一步)。
<p class="align-center"><a href="../../../images_www/articles/71/java/import-eclipse/eclipse-import-workspace-location.png" rel="lytebox" title="&quot;Import Eclipse Project&quot;(导入 Eclipse 项目)向导的 &quot;Workspace Location&quot;(工作区位置)页 - 单击查看大图"> <img alt="&quot;Import Eclipse Project&quot;(导入 Eclipse 项目)向导的 &quot;Workspace Location&quot;(工作区位置)页 " border="1" src="../../../images_www/articles/71/java/import-eclipse/eclipse-import-workspace-location-small.png"></a></p></li>
<li>在 "Projects to Import"(要导入的多个项目)页面中,选择您希望导入的项目。</li>
<li> 选择用于存储 NetBeans 项目文件的以下两个选项之一:
<ul>
<li><b>Store NetBeans project data inside Eclipse project folders</b>(在 Eclipse 项目文件夹内存储 NetBeans 项目数据)。NetBeans 在原始项目的顶级文件夹中添加文件夹和文件。</li>
<li><b>Create imported NetBeans projects in a separate location</b>(在单独位置创建导入的 NetBeans 项目)。NetBeans 使用原始 Eclipse 项目文件夹中的源和库,但会创建单独的文件夹用于保存 NetBeans 项目元数据和构建输出。</li>
</ul>
<p class="notes"><b>注:</b>通常,在 Eclipse 项目文件夹中存储 NetBeans 项目数据是更好的选择。在大多数情况下,这意味着 NetBeans 项目元数据将采用与 Eclipse 元数据相同的路径来引用源代码和库。因此,在不同的机器上从版本控制系统中检出项目应该在 NetBeans 和 Eclipse 中产生类似的行为。<br> 有关 NetBeans IDE 创建的文件和文件夹列表,请参见下面的 <a href="#metadata">NetBeans 项目文件</a></p>
</li>
<li>(仅当导入 Web 应用程序时才适用。)单击 "Next"(下一步)。在 "Servers "(服务器)页面中,注册 NetBeans IDE 项目需要的任何服务器。</li>
<li>单击 "Finish"(完成)。</li>
</ol>
<p>完成向导之后,可能会出现以下对话框:</p>
<ul>
<li><b>Import Issues</b>(导入问题)。此对话框提供有关 Eclipse 与 NetBeans 中项目结构差异的信息,并指出更正这些差异可能需要采取的操作。<br>您可以复制此对话框中的信息,并将它粘贴到别处供未来引用。<br>在大多数情况下,您可以使用项目的 "Project Properties"(项目属性)对话框来解决这些问题。有关解决大多数常见问题的指南,请参见<a href="#problems">解决导入问题</a>
<p class="align-center"><a href="../../../images_www/articles/71/java/import-eclipse/eclipse-import-issues.png" rel="lytebox" title="&quot;Import Issues&quot;(导入问题)对话框 - 单击查看大图"> <img alt="&quot;Import Issues&quot;(导入问题)对话框" border="1" src="../../../images_www/articles/71/java/import-eclipse/eclipse-import-issues-small.png"></a></p>
</li>
<li><b>Resolve Reference Problems</b>(解决引用问题)。此对话框提醒您其中一个项目库中出现了特定引用问题。关闭此对话框后,您可以通过右键单击项目节点并选择 "Resolve Reference Problems"(解决引用问题)来解决此问题。</li>
<li><b>Resolve Missing Server</b>(解决缺少服务器问题)。此对话框提醒您项目找不到必需的服务器。关闭此对话框后,您可以通过右键单击项目节点并选择 "Resolve Missing Server"(解决缺少服务器问题)来解决此问题。</li>
</ul>
<p>完成向导并关闭上述任何信息对话框之后,各项目的节点将出来在 "Projects"(项目)窗口中。
</p>
<p class="align-center"><img alt="导入项目后的 &quot;Projects&quot;(项目)窗口。" class="margin-around" src="../../../images_www/articles/71/java/import-eclipse/eclipse-import-projects-window.png"></p>
<p>如果存在 NetBeans 无法解析的项目元数据到服务器或其他资源的引用,则项目节点将变为红色。您可以立即解析这些引用,方法是右键单击项目节点并选择 "Resolve Reference Problems"(解决引用问题)或 "Resolve Missing Server"(解决缺少服务器问题)。</p>
<p>对于其他类型的项目配置调整,您可以使用 "Project Properties"(项目属性)对话框。使用以下方法打开 "Project Properties"(项目属性)对话框:右键单击项目节点,然后选择 "Properties"(属性)。</p>
<p>有关配置项目的更多信息,请参见“创建、导入和配置 Java 项目”指南中的<a href="project-setup.html#projects-configuring">配置类路径和其他项目设置</a></p>
<p class="align-center"><a href="#top">返回页首</a></p>
<h2><a name="build"></a>构建和运行项目</h2>
<p>将项目导入到 NetBeans 中之后,您可以构建和运行项目。通过 NetBeans 构建和运行命令创建的所有工件都保存在 <code>build</code><code>dist</code> 文件夹中。NetBeans 不会覆盖由 Eclipse 构建操作创建的输出。如果 Eclipse 项目已经有了 <code>build</code><code>dist</code> 文件夹,则 NetBeans 项目将创建名称为 <code>nbbuild</code><code>nbdist</code> 的文件夹,并使用它们保存构建输出。</p>
<p>下面列出了 "Run"(运行)菜单中可用的一些构建和运行命令:</p>
<ul>
<li><b>Run Project</b>(运行项目)。测试在 IDE 中运行应用程序。</li>
<li><b>Clean and Build Project</b>(清理并构建项目)。删除 <code>build</code>(或 <code>nbbuild</code>)和 <code>dist</code>(或 <code>nbdist</code>)文件夹的内容并重新构建所有项目输出。使用 NetBeans 构建脚本。在 Eclipse 中的清理命令使用类似的方法。</li>
<li><b>Clean</b>(清理)。删除 <code>nbbuild</code><code>nbdist</code> 文件夹的内容。</li>
<li><b>Build</b>(构建)。重新构建项目的输出。如果启用了 "Compile on Save"(在保存时编译)功能,则将禁用 "Build"(构建)命令。请参见“创建、导入和配置 Java 项目”指南的<a href="project-setup.html#building-compile-on-save">在保存时编译</a>部分。</li>
</ul>
<p>有关构建和运行应用程序以及定制构建流程的更多信息,请参见<a href="project-setup.html">创建、导入和配置 Java 项目</a>
</p>
<p class="align-center"><a href="#top">返回页首</a></p>
<h2><a name="metadata"></a>NetBeans 项目文件</h2>
<p>导入项目之后,您将在您的系统中找到以下文件夹和文件:</p>
<ul>
<li><code>build.xml</code> 文件或 <code>nb-build.xml</code> 文件。项目的主 NetBeans 构建脚本。您可以根据项目的需要来定制脚本。默认情况下,该文件的名称为 <code>build.xml</code>。如果项目文件夹中已经存在这样的文件,则该脚本的名称为 <code>nb-build.xml</code></li>
<li><code>nbproject</code> 文件夹。包含大多数 NetBeans 项目元数据,包括由主 NetBeans 构建脚本调用的资源。如果您将此文件夹和 <code>build.xml</code> 文件或 <code>nb-build.xml</code> 检入到您的版本控制系统中,则其他用户将能够在 NetBeans 中打开项目。该文件夹还包含一个 <code>private</code> 文件夹,其中包含特定于您的系统的数据。不应将该文件夹检入到版本控制系统中,因为它的内容会因用户而异。请参见下面的<a href="#versioning">版本控制注意事项</a></li>
<li><code>nbbuild</code> 文件夹。在 NetBeans 中构建或运行项目时,项目的源代码将被编译到此文件夹中。</li>
<li><code>nbdist</code> 文件夹。在 NetBeans 中构建项目时,将创建项目的可分发输出并保存在此文件夹中。其输出可以是 JAR 文件和 WAR 文件。</li>
</ul>
<p class="align-center"><a href="#top">返回页首</a></p>
<a name="versioning"></a><h2>版本控制注意事项</h2>
<p>如果从版本控制系统中检出项目,则不应将 <code>build</code>(或 <code>nbbuild</code>)、<code>dist</code>(或 <code>nbdist</code>)和 <code>nbproject/private</code> 文件夹检入到该版本控制系统中。 </p>
<p>如果项目位于 CVS、Subversion 或 Mercurial 版本控制系统中,则恰当的“忽略”文件将在导入项目时创建或更新。</p>
<p class="notes">尽管 <code>nbproject/private</code> 应被忽略,但应将 <code>nbproject</code> 检入版本控制系统。<code>nbproject</code> 中包含的元数据支持其他用户在 NetBeans 中打开项目,而不需要首先导入项目。</p>
<p class="align-center"><a href="#top">返回页首</a></p>
<h2><a name="resynch"></a>重新同步项目</h2>
<p>导入程序具备重新同步功能。如果 Eclipse 中的类路径在您最初导入它时已经变更,那么您可以使用“重新同步 Eclipse 项目”功能更新相应 NetBeans 项目的类路径。</p>
<p>项目重新同步是从 Eclipse 项目到 NetBeans 项目的单向操作。如果您对 NetBeans 中的项目结构进行更改,则这些更改将不会通过重新同步功能传播到 Eclipse 项目。如果您打算同时保存 Eclipse 和 NetBeans 项目,可以使用 Eclipse 项目作为“主”项目。</p>
<p>如果对 Eclipse 配置的更改非常明确且不需要您的输入,则 IDE 还将自动重新同步项目。这种自动重新同步操作发生在您打开项目之后。如果重新同步需要您的输出,那么您需要手动重新同步项目。</p>
<!-- TODO add information on what gets synchronized-->
<p><b>手动重新同步 NetBeans 项目与 Eclipse 项目:</b></p>
<ul>
<li>选择 "File"(文件)> "Import Project"(导入项目)> "Resynchronize Eclipse Projects"(重新同步 Eclipse 项目)。</li>
</ul>
<p class="notes"><b>注:</b>当您重新同步项目时,将对从工作区中导入的所有项目执行重新同步。</p>
<p class="align-center"><a href="#top">返回页首</a></p>
<h2><a name="problems"></a>解决导入问题</h2>
<p>将项目导入 NetBeans 中时,有些问题可能是 NetBeans IDE 无法自动解决的。针对其中一些问题,项目的上下文菜单中有对应的菜单项,例如 "Resolve Missing Server Problem"(解决缺少服务器问题)。其他问题可以在 NetBeans IDE 中已导入项目的 "Project Properties"(项目属性)对话框中解决。
</p>
<p>下面是常见导入问题及其解决方案列表。</p>
<table>
<tr>
<th class="tblheader" scope="col">问题消息</th>
<th class="tblheader" scope="col">解决方案</th>
</tr>
<tr>
<td class="tbltd1">解决缺少服务器问题</td>
<td class="tbltd1">右键单击项目节点并选择 "Resolve Missing Server"(解决缺少服务器问题)。然后,导航到包含服务器的文件或文件夹。</td>
</tr>
<tr>
<td class="tbltd1">解决引用问题</td>
<td class="tbltd1">右键单击项目节点并选择 "Resolve Reference Problem"(解决引用问题)。然后,导航到包含项目所引用的资源的文件或文件夹。</td>
</tr>
<tr>
<td class="tbltd1">无法使用项目 <i>ProjectName</i> 的 Eclipse 平台。它是 JRE,而 NetBeans 项目需要的是 JDK。NetBeans 将使用默认平台。
</td>
<td class="tbltd1">如果要更改 NetBeans 为项目使用的平台,选择 "Tools"(工具)> "Platforms"(平台)并指定一个不同的平台。</td>
</tr>
<tr>
<td class="tbltd1">Eclipse 项目 <i>ProjectName</i> 声明使用 "{1}" 目录的 JDK。但是此目录不存在。NetBeans 将使用默认平台。
</td>
<td class="tbltd1">如果要更改 NetBeans 为项目使用的平台,选择 "Tools"(工具)> "Platforms"(平台)并指定一个不同的平台。</td>
</tr>
<tr>
<td class="tbltd1">与 Eclipse 一样,NetBeans 不支持每个源根目录的源包括/排除。这些内容已合并在一起,建议您在 "Source"(源)面板的项目属性中仔细检查这些内容。
</td>
<td class="tbltd1">在 NetBeans 中,整个项目的包括和排除都在一处声明。要查看 NetBeans 项目中的包括和排除,右键单击项目节点和 "Projects"(项目)窗口并选择 "Properties"(属性)。在 "Project Properties"(项目属性)对话框中,选择 "Source"(源)标签,然后单击 "Includes/Excludes"(包括/排除)按钮。</td>
</tr>
<tr>
<td class="tbltd1">导入由于 <i>...</i> 而失败。有关更多的详细信息,请参见 IDE 的日志文件。</td>
<td class="tbltd1">您可以通过选择 "View"(查看)> "IDE Log"(IDE 日志)来打开 IDE 的日志文件。</td>
</tr>
<tr>
<td class="tbltd1">未知项目类型 - 无法将其导入。</td>
<td class="tbltd1">您只能导入以下类型的 Eclipse 项目:Java 项目、基于现有 Ant 文件的 Java 项目、静态 Web、动态 Web 和 JPA 项目。</td>
</tr>
</table>
<!-- TODO link to a wiki with other troubleshooting info-->
<!-- ======================================================================================= -->
<p class="align-center"><a href="#top">返回页首</a></p>
<div class="feedback-box" ><a href="/about/contact_form.html?to=3&amp;subject=Feedback:%20Importing%20Eclipse%20Projects%20into%20NetBeans%20IDE">发送有关此教程的反馈意见</a></div>
<br style="clear:both;" >
<h2><a name="nextsteps"></a>另请参见</h2>
<ul>
<li><i>使用 NetBeans IDE 开发应用程序</i>中的<a href="http://www.oracle.com/pls/topic/lookup?ctx=nb7400&id=NBDAG445">导入 Eclipse 或 JBuilder 项目</a></li>
<li><a href="http://wiki.netbeans.org/NetBeansForEclipseUsers">针对 Eclipse 用户的 NetBeans</a></li>
<li><a href="project-setup.html">创建、导入和配置 Java 项目</a></li>
<li><a href="../../trails/java-se.html">常规 Java 开发学习资源</a></li>
<li><a href="../../trails/matisse.html">Java GUI 应用程序学习资源</a></li>
<li><a href="../../trails/java-ee.html">Java EE 和 Java Web 学习资源</a></li>
</ul>
<p class="align-center"><a href="#top">返回页首</a></p>
</body>
</html>