Eclipse 可以輕松地支持 Java™ 和其他編程語言。但是直到最近,仍然很難使用 Eclipse 構建、運行和調試 C# 項目。本文將介紹如何使用 Eclipse Mono Integration (Emonic) 和 NAnt,這些都是可用於 Eclipse 的最活躍的 C# 和 .NET 工具包。本文的目標 讀者是擁有 .NET 背景知識、熟悉 Eclipse 並且需要使用一種有效方法在 Eclipse 中處理 C# 和 .NET 的開發人員。
用 C# 構建的應用程序通常運行在 .NET Framework 中,.NET Framework 部署在 Windows® 台式機、服務器和移動操作平台中(請參閱側欄 “C# 和 .NET 簡介”)。雖然 Eclipse Platform 提供了 C Development Toolkit (CDT) 來支持 C 和 C++ 開發,但是它不能用於 C# 開發。一些 Eclipse 插件使用 .NET Framework,但是並不是所有插件都支持最新版本,撰寫本文時最新版本是 V3.5。
本文將介紹如何使用 Emonic,它是針對 Eclipse Platform 的 C# 環境,提供了豐 富的功能。雖然 Emonic 開發人員提供了介紹如何安裝和創建項目的文檔,但是如果遵循手 冊,使用現有 C# 項目會十分棘手。本文將幫助您在不了解 C# 的情況下安裝、構建和運行 C# 項目。我們將使用 NAnt 自動構建和運行 .NET 項目。本文還將介紹如何使用樣例項目遷 移現有 Visual Studio® 項目。
Emonic 和 NAnt 簡介
Emonic 概覽
Emonic 是允許您用 Mono 或 Microsoft .NET Framework 構建 C# 程序的 Eclipse 插件。您可以通過此插件來使用項目向導創建 C# 項目。圖 1 顯示了帶有 Emonic 插件的 C# 項目。
圖 1. 帶有 Emonic 插件的示例 C# 項目
NAnt 概覽
雖然 Emonic 提供了項目向導、編輯器、自動構建器、啟動程序和介紹如何使用這四種工 具的教程,但是我還是因單獨使用 Emonic 構建和啟動應用程序吃了些苦頭。這次嘗試促使 我搜索一種可以處理 Emonic 的易於使用的構建工具以及一些與本文有關的說明。在這裡, 我將介紹 NAnt 構建工具並說明如何把現有的 C# 項目導入 Eclipse 工作空間。
NAnt 是以類似於 Ant 的方式運行的免費的 .NET 構建工具。NAnt 支持 .NET Framework V1.0 至 V3.5。我們將使用最新版本 NAnt V0.86 beta 1,並說明它如何能幫助您構建和啟 動應用程序。
系統要求
您將需要以下軟件:
Eclipse V3.1 或更高版本 —— 我們在這裡使用了 Eclipse Europa。
.NET V2.0 SDK —— 這意味著您必須在 Windows 環境中工作。如 “C# 和 .NET 簡介” 中所述,開放源碼開發人員已經重復創建了多個 .NET Framework 體系 —— 但不是所有。 由於本文的目的在於說明如何在 Eclipse 中開發 C# 應用程序而不是說明如何用 Mono、 DotGNU 或 Rotor 開發 C# 應用程序,因此我們將把這些任務留給有豐富經驗的讀者作為練 習。
NAnt V0.86 beta 1
Emonic
Microsoft .NET Framework V2.0 SDK 樣例
安裝 Emonic 插件和 NAnt
安裝 Emonic 插件
安裝 Emonic 有兩種方法:在更新站點中更新 Eclipse 或者從 SourceForge 下載。在本 例中,我們將使用更新站點。下面是操作步驟:Menu: Help > Software Update > Find and Install > Search for new features to install。單擊 New Remote site 並 輸入 http://emonic.sourceforge.net/updatesite/internap/site.xml。
安裝 Emonic 插件並重新啟動 Eclipse 之後,您可以使用項目向導創建空白 C# 項目。 圖 2 顯示了用於在 Eclipse 中創建 C# 項目的向導。
圖 2. Eclipse 中的 .NET 項目創建向導
下載和安裝 NAnt
NAnt V0.86 beta1 是最新版本。從 SourceForge 下載並解壓縮它,然後把它安裝到任意 位置或者把 NAnt 目錄設為路徑變量。
導入 .NET 樣例項目
從 MSDN 中下載並解壓縮 Microsoft .NET Framework V2.0 SDK 樣例。樣例包括許多樣 例項目(Visual Basic、C# 等)。在本文中,我們將使用位於Technologies\Networking\WebClientSample\CS的 WebClientSample。
項目結構
圖 3 在浏覽器視圖中顯示了 C# 項目結構。
圖 3. C# 項目結構
從 C# 項目中導入
要把 C# 項目導入 Eclipse,需要執行以下操作:
用項目向導創建一個空白 .NET 項目並把它命名為 WebClientSample。在 .NET 項目創建 向導中,選擇 Microsoft-2.0 作為目標框架,然後完成向導。
右鍵單擊項目,選擇 Import 並使用 File System,選擇 WebClientSample 目錄,然後 按 Finish。
build.xml 是默認的構建配置文件。清單 1 顯示了作為已創建項目的默認文件。
清單 1. 默認的 build.xml 文件
<?xml version='1.0'?>
<project basedir='.' default='all' name='WebClientSample2'>
<property name='nant.settings.currentframework' value='net-2.0'/>
<property name='build' value='bin'/>
<property name='src' value='src'/>
<target name='all'/>
</project>
我們需要指定目標輸出文件、源代碼目錄、資源和引用庫。清單 2 顯示了示例 build.xml。
清單 2. WebClientSample 的 build.xml 文件
<?xml version='1.0'?>
<project basedir='.' default='all' name='WebClientSample'>
<property name='nant.settings.currentframework' value='net-2.0'/>
<property name='build' value='bin'/>
<property name='src' value='src'/>
<target depends='WebClientSample' name='all'/>
<target name='WebClientSample'>
<csc debug='true' optimize='true' output='${build}/WebClientSample.exe' target='exe'
warninglevel='4'>
<sources>
<include name='**/*.cs'/>
</sources>
<resources dynamicprefix="true">
<include name='**/*.resx'/>
<include name='${src}/Resources/*.bmp'/>
</resources>
<references>
<include name='System.dll'/>
<include name='System.Data.dll'/>
<include name='System.XML.dll'/>
</references>
</csc>
</target>
</project>
從 .NET SDK 樣例項目中導入 WebClientSample 之後,圖 4 使用 Package 視圖顯示了 C# 項目結構。
圖 4. 帶有 Package 視圖的 C# 項目
構建、運行和調試
需要創建兩個外部程序:Build_WebClientSample 和 Run_WebClientSample。圖 5 顯示 了 Build_WebClientSample。記住要在位置中選擇 NAnt.exe 路徑。圖 6 顯示了帶有 NAnt 外部工具的控制台。
圖 5. Build_WebClientSample
圖 6. Build_WebClientSample 控制台
要運行此樣例,請右鍵單擊 build.xml,單擊 Run As > Open External Tools Dialog 並創建 Run_WebClientSample。在參數中輸入 Web 站點 URL,例如 www.google.com 。圖 7 顯示了 Run_WebClientSample,而圖 8 顯示了 Run_WebClientSample 的交互式控制 台。
圖 7. Run_WebClientSample
圖 8. Run_WebClientSample 控制台
結束語
您現在已經了解了 Emonic 和 NAnt 的基本知識、這兩個工具如何幫助您在 Eclipse 中 構建 .NET 應用程序,以及如何把現有的 C# 項目遷移到 Eclipse 中。