自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Eclipse集成和調(diào)試Ant工程

開發(fā) 后端
使用Ant來構(gòu)建Java小型或大型項目的好處是不言而喻的。本文展示如何在Eclipse里集成Ant的工程,并配置使能調(diào)試Ant構(gòu)建腳本build.xml和.java源代碼文件。一般我們把使用Ant構(gòu)建的Java項目導(dǎo)入到Eclipse里時,會遇到這個問題:調(diào)試Ant的build.xml腳本和指定使用哪個Ant的任務(wù)(task)來調(diào)試java源代碼文件。

摘要:使用Ant來構(gòu)建Java小型或大型項目的好處是不言而喻的。本文展示如何在Eclipse里集成Ant的工程,并配置使能調(diào)試Ant構(gòu)建腳本build.xml和.java源代碼文件。一般我們把使用Ant構(gòu)建的Java項目導(dǎo)入到Eclipse里時,會遇到這個問題:調(diào)試Ant的build.xml腳本和指定使用哪個Ant的任務(wù)(task)來調(diào)試java源代碼文件。

1 快速從0開始搭建Eclipse+Ant環(huán)境

為簡單起見,本文的Eclipse開發(fā)環(huán)境采用nvidia提供的一鍵式組合開發(fā)包Tegra Android Developer Pack(NVPACK),在下面的網(wǎng)址中可以下載你需要的版本:

http://developer.nvidia.com/tegra-resources

我選擇了:Tegra Android Developer Pack 1.0r7,它包含了下面的開發(fā)組件:

  • Android SDK r18
  • Android NDK r7c
  • JDK 6u24
  • Cygwin 1.7
  • Eclipse 3.7.1
  • CDT 8.0.0
  • ADT 15.0.0
  • Apache Ant 1.8.2
  • NVIDIA Debug Manager for Eclipse 12.0.0
  • Tegra Sample Code

在Ubuntu下如何安裝這個NVPACK,請參考我的文章:

一鍵解決Ubuntu下安裝Eclipse Android/C/C++ 開發(fā)環(huán)境

2 創(chuàng)建一個簡單的Ant工程

例子工程zebra的目錄結(jié)構(gòu)如下:

  1. zebra/  
  2.     -----build.xml  
  3.     +----src/  
  4.          +----org/  
  5.               +----cheungmine/  
  6.                    +----study/  
  7.                         ----Main.java 

build.xml的內(nèi)容如下:

  1. <span style="font-size:12px;color:#333333;"><?xml version="1.0" encoding="UTF-8"?>  
  2. <project name="zebra" default="compile">  
  3.     <description>My first complete build file, including packaging and executing a Java program.</description>  
  4.     <target name="init" description="Create the output directories">  
  5.         <mkdir dir="build/classes"/>  
  6.         <mkdir dir="dist"/>  
  7.     </target>  
  8.  
  9.     <target name="compile" depends="init" description="Compiles into the output directories">  
  10.         <javac srcdir="src" debug="true" destdir="build/classes" includeantruntime="false"></javac>  
  11.     </target>  
  12.  
  13.     <target name="package" depends="compile" description="Creates the JAR package files">  
  14.         <jar destfile="dist/zebra.jar" basedir="build/classes"></jar>  
  15.     </target>  
  16.  
  17.     <target name="clean" description="Delete the output directories">  
  18.         <delete dir="build"/>  
  19.         <delete dir="dist"/>  
  20.     </target>  
  21.       
  22.     <target name="exec" depends="compile" description="Running programs under Ant">  
  23.         <!-- $ java -cp build/classes org.cheungmine.study.Main hello world . -->  
  24.         <java classname="org.cheungmine.study.Main" classpath="build/classes">  
  25.             <arg value="hello"/>  
  26.             <arg value="world"/>  
  27.             <!--   
  28.                 the following arg uses the file attribute, which tells Ant to resolve   
  29.                 that attribute to an absolute file location before calling the program.  
  30.             -->  
  31.             <arg file="."/>  
  32.         </java>  
  33.         <!--  
  34.         <echo level="verbose" message="running"/>  
  35.         <echo level="info" message="running"/>  
  36.         <echo level="warning" message="running"/>  
  37.         <echo level="error" message="running"/>  
  38.         -->  
  39.     </target>  
  40. </project></span>  

Main.java的內(nèi)容如下:

  1. package org.cheungmine.study;  
  2. public class Main {  
  3.    &nbsp;public static void main(String args[]) {  
  4.        &nbsp;System.out.println("org.cheungmine.study");  
  5.         for(int i=0; i<args.length; i++) {  
  6.            &nbsp;System.out.println(args[i]);  
  7.        &nbsp;}  
  8.     }  

3 導(dǎo)入Ant工程到Eclipse中

上面的工程在ant下構(gòu)建成功。下面把它導(dǎo)入到Eclipse中。選擇菜單:

Eclipse->File->New->Project...->Java Project from Existing Ant Buildfile

按[Next],在Ant buildfile選擇:<yourpath>\zebra\build.xml

按[Finish]。這樣Ant工程就被導(dǎo)入到Eclipse中了。

在Eclipse的Package Explorer中定位到文件build.xml,在任一行設(shè)置斷點,

菜單Eclipse->Window->Show View->Ant確保Ant和Outline出現(xiàn)在右邊的窗口中。如果Outline中沒有build.xml的內(nèi)容,切換到Ant窗口,選擇Add Buildfiles來加入build.xml,這樣在Outline中就出現(xiàn)了如下面的圖1:


圖1 在Eclipse中調(diào)試build.xml

 

選擇Outline->exec->右鍵->Debug As->Ant Build,即看到左邊的斷點被調(diào)試執(zhí)行。這個僅僅是調(diào)試Ant的build.xml文件,接下來的方法用來直接調(diào)試Java代碼,本例中是Main.java。

#p#

 

4 使用Ant構(gòu)建文件作為項目構(gòu)建器

在使用 Eclipse Java IDE 時,默認使用了 Java Builder。每當(dāng)我們保存文件時,Java Builder 就會在后臺默默地運行,并立即對這些文件進行編譯。它是 Eclipse 重大的特性之一:Java Builder 允許我們完全跳過編譯過程,因為我們的程序總是 處于已編譯狀態(tài),即使它充滿了錯誤亦是如此。因此,我們可以在鍵入之后立即運行 Java 程序,無需首先通過一個漫長而乏味的編譯過程。該功能為 Eclipse 用戶省去了大量的時間和爭論,也是 Eclipse 能夠在程序員中廣泛流行的原因之一。

但是如果我們想要做編譯文件以外的事情呢?如果我們想要為整個項目創(chuàng)建一個 jar 文件,并且在每次修改項目時將該文件復(fù)制到一個特定的目錄呢?如果我們想要所有這些都發(fā)生在后臺,無需每次都告訴 Eclipse 呢?我們完全可以坐下來、放松、編寫一些代碼、喝杯咖啡,讓 Eclipse 在后臺處理復(fù)雜的構(gòu)建過程,甚至無需知道這個過程正在后臺進行。

聽起來是不是像做夢呀?不是做夢。我們可以真正做到這樣的事情。我們只需要將一個 Ant 構(gòu)建文件作為“構(gòu)建器” 添加到我們的項目即可,這個構(gòu)建文件中定義了構(gòu)建過程的所有復(fù)雜性。這樣做之后,魔術(shù)將開始上演。

右擊 Package Explorer 視圖中的項目并單擊 Properties(或者:Eclipse菜單->Project->Properties),展開 Builders 并單擊 New,向項目添加一個新的構(gòu)建器MyAntBuilder。添加之后的樣子如下圖2:


圖2 使用Ant構(gòu)建文件作為項目構(gòu)建器

 


圖3a Ant項目構(gòu)建器Main屬性


圖3b Ant項目構(gòu)建器Refresh屬性


圖3c Ant項目構(gòu)建器Target屬性

在這里,我們選擇構(gòu)建文件何時真正運行,更具體來說,運行哪個目標。有四個選項:

After a "Clean" —— 每當(dāng)我們在項目上執(zhí)行一個清除操作時,目標就會運行。

Manual Build —— 在自動構(gòu)建被關(guān)閉的時候使用該選項。每當(dāng)我們執(zhí)行手動構(gòu)建時,指定的目標就將運行。

Auto-Build —— 每當(dāng)執(zhí)行自動構(gòu)建時,目標就會運行。一般來說,就是每當(dāng)我們保存 Java 文件時。

During a "Clean" —— 該選項與 After a "Clean" 選項不同,因為目標是在清除操作本身期間被調(diào)用。使用該選項在清除操作期間執(zhí)行一些定制的文件清除。

 

這樣,每次我們Eclipse->Project->Build All / Clean時,Eclipse都是調(diào)用Ant的構(gòu)建器來構(gòu)建項目了。但是仍然不能調(diào)試到Java源代碼中。因此我們需要:

#p#

5 在Eclipse內(nèi)調(diào)試自定義的Ant task

在左邊的Package Explorer中右鍵點擊zebra項目,選擇Build Path->Add External Archives...,選中你的${ANT_HOME}/lib/下的全部jar文件。我這里是:C:\NVPACK\apache-ant-1.8.2\lib\*.jar。

再一次,選擇Build Path->Add External Archives...,選中你的${JAVA_HOME}/lib/下面的tools.jar文件。我這里是:

C:\NVPACK\jdk1.6.0_24\lib\tools.jar。

這些jar都被增加到zebra的Referenced Libraries下面。接下來配置使用Ant的Main來調(diào)試java。進入菜單:Eclipse->Run->Debug Configurations...,在左邊的Java Application下面增加一個設(shè)置:Ant_Main。如圖4:

 


圖4a Ant項目Debug配置

 


圖4b Ant項目Debug配置

這樣就表示我們要用Ant的exec這個task來調(diào)試我們的java代碼。如下圖5在Main.java中放置斷點,并啟動Ant_Main來調(diào)試,可以看到Ant任務(wù)后,順利進入代碼中的斷點。


圖5a Eclipse啟動Ant任務(wù)調(diào)試

 


圖5b Eclipse中調(diào)試Ant工程源碼

原文鏈接:http://blog.csdn.net/cheungmine/article/details/7526146

【編輯推薦】

  1. MyEclipse 10 中增加svn插件
  2. 在Eclipse中使用JSHint檢查JavaScript
  3. Eclipse即將發(fā)布基于瀏覽器的IDE
  4. 25個讓Java程序員更高效的Eclipse插件
  5. 為何IntelliJ IDEA比Eclipse更好
責(zé)任編輯:林師授 來源: cheungmine的博客
相關(guān)推薦

2011-09-13 17:44:00

Eclipse And

2012-02-20 14:41:30

JavaPlay Framew

2009-06-11 13:28:18

Glassfish集成

2010-06-09 11:27:46

Eclipse UML

2009-06-02 10:02:50

eclipse jboeclipse jbojboss for e

2012-02-02 15:14:29

Node.js

2009-06-03 14:42:21

Eclipse調(diào)試調(diào)試Java程序

2011-05-31 15:35:04

Android Ant

2010-07-07 09:11:31

Eclipse UML

2010-05-08 17:22:03

Black Berry

2011-09-15 09:21:46

持續(xù)集成

2013-04-10 09:46:29

EclipseJava

2011-02-22 16:09:53

Eclipse調(diào)試

2020-05-25 15:40:23

IntelliJ IDEclipse強Java

2010-07-11 00:24:50

EclipsePHPPDT

2010-08-05 09:13:22

EclipseFlexBuilder

2014-01-07 10:36:32

EclipsSpark

2022-10-25 22:09:58

Designreactantd

2013-07-29 14:23:55

Eclipse開發(fā)環(huán)境Eclipse開發(fā)環(huán)境

2011-02-23 09:35:25

Eclipse遠程調(diào)試
點贊
收藏

51CTO技術(shù)棧公眾號