Õ¾ÄÚËÑË÷: ÇëÊäÈëËÑË÷¹Ø¼ü´Ê

µ±Ç°Ò³Ãæ: ¿ª·¢×ÊÁÏÊ×Ò³ ¡ú Java רÌâ ¡ú Eclipse¿ìËÙÉÏÊÖÖ¸ÄÏ֮ʹÓÃANT

Eclipse¿ìËÙÉÏÊÖÖ¸ÄÏ֮ʹÓÃANT

ÕªÒª: AntÊÇJavaƽ̨Ï·dz£°ôµÄÅú´¦ÀíÃüÁîÖ´ÐгÌÐò£¬ÄÜ×Ô¶¯Íê³É±àÒ룬²âÊÔ£¬´ò°ü£¬²¿ÊðµÈµÈһϵÁÐÈÎÎñ
¡¡¡¡AntÊÇJavaƽ̨Ï·dz£°ôµÄÅú´¦ÀíÃüÁîÖ´ÐгÌÐò£¬Äܷdz£·½±ãµØ×Ô¶¯Íê³É±àÒ룬²âÊÔ£¬´ò°ü£¬²¿ÊðµÈµÈһϵÁÐÈÎÎñ£¬´ó´óÌá¸ß¿ª·¢Ð§ÂÊ¡£Èç¹ûÄãÏÖÔÚ»¹Ã»ÓпªÊ¼Ê¹ÓÃAnt£¬ÄǾÍÒª¸Ï¿ì¿ªÊ¼Ñ§Ï°Ê¹Óã¬Ê¹×Ô¼ºµÄ¿ª·¢Ë®Æ½ÉÏÒ»¸öÐĄ̂½×¡£

¡¡¡¡EclipseÖÐÒѾ­¼¯³ÉÁËAnt£¬ÎÒÃÇ¿ÉÒÔÖ±½ÓÔÚEclipseÖÐÔËÐÐAnt¡£

¡¡¡¡ÒÔÇ°Ã潨Á¢µÄHello¹¤³ÌΪÀý£¬´´½¨ÒÔÏÂĿ¼½á¹¹£º

<table width="90%" align=center border=0> <tr> <td> </td></tr></table>
¡¡¡¡Ð½¨Ò»¸öbuild.xml£¬·ÅÔÚ¹¤³Ì¸ùĿ¼Ï¡£build.xml¶¨ÒåÁËAntÒªÖ´ÐеÄÅú´¦ÀíÃüÁî¡£ËäÈ»AntÒ²¿ÉÒÔʹÓÃÆäËüÎļþÃû£¬µ«ÊÇ×ñÑ­±ê×¼Äܸüʹ¿ª·¢¸ü¹æ·¶£¬Í¬Ê±Ò×ÓÚÓë±ðÈ˽»Á÷¡£

¡¡¡¡Í¨³££¬src´æ·ÅJavaÔ´Îļþ£¬classes´æ·Å±àÒëºóµÄclassÎļþ£¬lib´æ·Å±àÒëºÍÔËÐÐÓõ½µÄËùÓÐjarÎļþ£¬web´æ·ÅJSPµÈwebÎļþ£¬dist´æ·Å´ò°üºóµÄjarÎļþ£¬doc´æ·ÅAPIÎĵµ¡£

¡¡¡¡È»ºóÔÚ¸ùĿ¼Ï´´½¨build.xmlÎļþ£¬ÊäÈëÒÔÏÂÄÚÈÝ£º

<table borderColor=#ffcc66 width="90%" align=center bgColor=#d9ecee border=1> <tr> <td>£¼?xml version="1.0"?£¾
£¼project name="Hello world" default="doc"£¾

£¼!-- properies --£¾
£¼property name="src.dir" value="src" /£¾
£¼property name="report.dir" value="report" /£¾
£¼property name="classes.dir" value="classes" /£¾
£¼property name="lib.dir" value="lib" /£¾
£¼property name="dist.dir" value="dist" /£¾
£¼property name="doc.dir" value="doc"/£¾

£¼!-- ¶¨Òåclasspath --£¾
£¼path id="master-classpath"£¾
£¼fileset file="${lib.dir}/*.jar" /£¾
£¼pathelement path="${classes.dir}"/£¾
£¼/path£¾

£¼!-- ³õʼ»¯ÈÎÎñ --£¾
£¼target name="init"£¾
£¼/target£¾

£¼!-- ±àÒë --£¾
£¼target name="compile" depends="init" description="compile the source files"£¾
£¼mkdir dir="${classes.dir}"/£¾
£¼javac srcdir="${src.dir}" destdir="${classes.dir}" target="1.4"£¾
£¼classpath refid="master-classpath"/£¾
£¼/javac£¾
£¼/target£¾

£¼!-- ²âÊÔ --£¾
£¼target name="test" depends="compile" description="run junit test"£¾
£¼mkdir dir="${report.dir}"/£¾
£¼junit printsummary="on"
haltonfailure="false"
failureproperty="tests.failed"
showoutput="true"£¾
£¼classpath refid="master-classpath" /£¾
£¼formatter type="plain"/£¾
£¼batchtest todir="${report.dir}"£¾
£¼fileset dir="${classes.dir}"£¾
£¼include name="**/*Test.*"/£¾
£¼/fileset£¾
£¼/batchtest£¾
£¼/junit£¾
£¼fail if="tests.failed"£¾
***********************************************************
**** One or more tests failed! Check the output ... ****
***********************************************************
£¼/fail£¾
£¼/target£¾

£¼!-- ´ò°ü³Éjar --£¾
£¼target name="pack" depends="test" description="make .jar file"£¾
£¼mkdir dir="${dist.dir}" /£¾
£¼jar destfile="${dist.dir}/hello.jar" basedir="${classes.dir}"£¾
£¼exclude name="**/*Test.*" /£¾
£¼exclude name="**/Test*.*" /£¾
£¼/jar£¾
£¼/target£¾

£¼!-- Êä³öapiÎĵµ --£¾
£¼target name="doc" depends="pack" description="create api doc"£¾
£¼mkdir dir="${doc.dir}" /£ ¾
£¼javadoc destdir="${doc.dir}"
author="true"
version="true"
use="true"
windowtitle="Test API"£¾
£¼packageset dir="${src.dir}" defaultexcludes="yes"£¾
£¼include name="example/**" /£¾
£¼/packageset£¾
£¼doctitle£¾£¼![CDATA[£¼h1£¾Hello, test£¼/h1£¾]]£¾£¼/doctitle£¾
£¼bottom£¾£¼![CDATA[£¼i£¾All Rights Reserved.£¼/i£¾]]£¾£¼/bottom£¾
£¼tag name="todo" scope="all" description="To do:" /£¾
£¼/javadoc£¾
£¼/target£¾
£¼/project£¾</td></tr></table>
¡¡¡¡ÒÔÉÏxmlÒÀ´Î¶¨ÒåÁËinit£¨³õʼ»¯£©£¬compile£¨±àÒ룩£¬test£¨²âÊÔ£©£¬doc£¨Éú³ÉÎĵµ£©£¬pack£¨´ò°ü£©ÈÎÎñ£¬¿ÉÒÔ×÷Ϊģ°å¡£

¡¡¡¡Ñ¡ÖÐHello¹¤³Ì£¬È»ºóÑ¡Ôñ¡°Project¡±£¬¡°Properties¡±£¬¡°Builders¡±£¬¡°New¡­¡±£¬Ñ¡Ôñ¡°Ant Build¡±£º

<table width="90%" align=center border=0> <tr> <td> </td></tr></table>
¡¡¡¡ÌîÈëName£ºAnt_Builder£»Buildfile£ºbuild.xml£»Base Directory£º${workspace_loc:/Hello}£¨°´¡°Browse Workspace¡±Ñ¡Ôñ¹¤³Ì¸ùĿ¼£©£¬ÓÉÓÚÓõ½ÁËjunit.jar°ü£¬ËÑË÷EclipseĿ¼£¬ÕÒµ½junit.jar£¬°ÑËü¸´ÖƵ½Hello/libĿ¼Ï£¬²¢Ìí¼Óµ½AntµÄClasspathÖУº

<table width="90%" align=center border=0> <tr> <td> </td></tr></table>
¡¡¡¡È»ºóÔÚBuilderÃæ°åÖй³ÉÏAnt_Build£¬È¥µôJava Builder£º

<table width="90%" align=center border=0> <tr> <td> </td></tr></table>
¡¡¡¡ÔٴαàÒ룬¼´¿ÉÔÚ¿ØÖÆ̨¿´µ½AntµÄÊä³ö£º

<table borderColor=#ffcc66 width="90%" align=center bgColor=#d9ecee border=1> <tr> <td>Buildfile: F:\eclipse-projects\Hello\build.xml

init:

compile:
[mkdir] Created dir: F:\eclipse-projects\Hello\classes
[javac] Compiling 2 source files to F:\eclipse-projects\Hello\classes

test:
[mkdir] Created dir: F:\eclipse-projects\Hello\report
[junit] Running example.HelloTest
[junit] Tests run: 1, Failures: 0, Errors: 0, Time elapsed: 0.02 sec

pack:
[mkdir] Created dir: F:\eclipse-projects\Hello\dist
[jar] Building jar: F:\eclipse-projects\Hello\dist\hello.jar

doc:
[mkdir] Created dir: F:\eclipse-projects\Hello\doc
[javadoc] Generating Javadoc
[javadoc] Javadoc execution
[javadoc] Loading source files for package example...
[javadoc] Constructing Javadoc information...
[javadoc] Standard Doclet version 1.4.2_04
[javadoc] Building tree for all the packages and classes...
[javadoc] Building index for all the packages and classes...
[javadoc] Building index for all classes...
[javadoc] Generating F:\eclipse-projects\Hello\doc\stylesheet.css...
[javadoc] Note: Custom tags that could override future standard tags: @todo. To avoid potential overrides, use at least one period character (.) in custom tag names.
[javadoc] Note: Custom tags that were not seen: @todo
BUILD SUCCESSFUL
Total time: 11 seconds</td></tr></table>
¡¡¡¡AntÒÀ´ÎÖ´Ðгõʼ»¯£¬±àÒ룬²âÊÔ£¬´ò°ü£¬Éú³ÉAPIÎĵµÒ»ÏµÁÐÈÎÎñ£¬¼«´óµØÌá¸ßÁË¿ª·¢Ð§ÂÊ¡£½«À´¿ª·¢J2EEÏîĿʱ£¬»¹¿É¼ÓÈ벿ÊðµÈÈÎÎñ¡£²¢ÇÒ£¬¼´Ê¹ÍÑÀëÁËEclipse»·¾³£¬Ö»ÒªÕýÈ·°²×°ÁËAnt£¬ÅäÖúû·¾³±äÁ¿ANT_HOME=£¼Ant½âѹĿ¼£¾£¬Path=¡­;%ANT_HOME%\bin£¬ÔÚÃüÁîÐÐÌáʾ·ûÏÂÇл»µ½HelloĿ¼£¬¼òµ¥µØ¼üÈëant¼´¿É¡£



¡ü·µ»ØĿ¼
ǰһƪ: JavaÊý¾Ý¶ÔÏó¼¼ÊõJDO³õ²½¸ÅÀÀ
ºóһƪ: JavaÖÐThreadLocalµÄÉè¼ÆÓëʹÓÃ