`
孤星119
  • 浏览: 122696 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Ant 基础例子

 
阅读更多

1.Ant 编译java项目

<?xml version="1.0" encoding="UTF-8"?>
<project name="javacTest" default="compile" basedir=".">
	
	<!--srcdir -->
	<property name="srcdir" value="${basedir}/src" />	
	
	<!-- java_home-->
	<property name="JAVA_HOME" value="C:\Program Files\Java\jdk1.6.0_26" />
	
	<!-- classpath -->
    <path id="classpath">
        <fileset dir="${JAVA_HOME}\lib">
            <include name="**/*.jar" />
        </fileset>
    </path>
	

   <target name="clean">
       <delete dir="build"/>
   </target>
    
   <!--compile java-->
    <target name="compile" description="Compile Java sources" depends="clean">
        <echo message="Build Java" />
    	<mkdir dir="${basedir}/build/classes" />
        <javac srcdir="${srcdir}"
               destdir="${basedir}/build/classes"
        	   includeantruntime="on">
            <classpath refid="classpath" />
        </javac>
    </target>
    
</project>

 

2.Ant 构建Web 项目

  1).compile java文件

  2).src目录除java文件外copy,如配置文件等

  3).构建后的目录是web-inf/classes

 

<?xml version="1.0" encoding="UTF-8"?>
<project name="javacTest" default="copy" basedir=".">
	
	<!-- java_home-->
	<property name="JAVA_HOME" value="C:\Program Files\Java\jdk1.6.0_26" />
	
    <property name="webapp.src" value="${basedir}/src" />
    <property name="webapp.webroot" value="${basedir}/WebContent" />
    <property name="webapp.webinf" value="${webapp.webroot}/WEB-INF" />
	<property name="lib.dir" value="${webapp.webinf}/lib"/>
	
	<!-- classpath -->
    <path id="classpath">
        <fileset dir="${JAVA_HOME}\lib">
            <include name="**/*.jar" />
        </fileset>
		<fileset dir="${lib.dir}">
			<include name="**/*.jar"/> 			
		</fileset>
    </path>
	
	
	
	<!--  clean  -->
   <target name="clean_project">
       <delete dir="${webapp.webinf}/classes"/>
   </target>
	
	
	<!--compile java-->
	<target name="compile" description="Compile Java sources" depends="clean_project">
	    <echo message="Build Java" />
		<mkdir dir="${webapp.webinf}/classes"/>
	    <javac srcdir="${webapp.src}"
	           destdir="${webapp.webinf}/classes"
	    	   includeantruntime="on">
	        <classpath refid="classpath" />
	    </javac>
	</target>
	
	
	<!-- copy files -->
    <target name="copy" description="copy files" depends="compile">
        <copy todir="${webapp.webinf}/classes" overwrite="yes">
            <fileset dir="${webapp.src}">
                <exclude name="**/*.java" />
            </fileset>
        </copy>
    </target>
    
    
</project>

 

 

3.Ant构建Web项目, 并生成测试报告

   初学Ant 自己写的, 各种凌乱啊。

  

<?xml version="1.0" encoding="UTF-8"?>
<project name="Junit" default="JUnitAllTests" basedir=".">
	
	<!-- java_home-->
	<property name="JAVA_HOME" value="C:\Program Files\Java\jdk1.6.0_26" />
	<property environment="env"/>
    <property name="debuglevel" value="source,lines,vars"/>
    <property name="junit.output.dir" value="JunitTestResult"/>
    <property name="java_compile_version" value="1.6"/>
    <property name="source" value="1.6"/>
	<property name="debug" value="true"/>
    <property name="webapp.src" value="${basedir}/src" />
	<property name="webapp.test" value="${basedir}/test" />
    <property name="webapp.webroot" value="${basedir}/WebContent" />
    <property name="webapp.webinf" value="${webapp.webroot}/WEB-INF" />
	<property name="lib.dir" value="${webapp.webinf}/lib"/>
	

	<!-- Compile Start -->

			<!--compile classpath -->
		    <path id="compile.classpath">
		        <fileset dir="${JAVA_HOME}\lib">
		            <include name="**/*.jar" />
		        </fileset>
				<fileset dir="${lib.dir}">
					<include name="**/*.jar"/> 			
				</fileset>
		    </path>
			
			<!--  clean  -->
		   <target name="clean_project">
		       <delete dir="${webapp.webinf}/classes"/>
		   </target>
			
			<!--compile java-->
			<target name="compile" description="Compile Java sources" depends="clean_project">
			    <echo message="Build Java" />
				<mkdir dir="${webapp.webinf}/classes"/>
			    <javac srcdir="${basedir}"
			           destdir="${webapp.webinf}/classes"
			    	   includeantruntime="on">
			        <classpath refid="compile.classpath" />
			    </javac>
			</target>
			
			<!-- copy files -->
		    <target name="copy" description="copy files" depends="compile">
		        <copy todir="${webapp.webinf}/classes" overwrite="yes">
		            <fileset dir="${webapp.src}">
		                <exclude name="**/*.java" />
		            </fileset>
		            <fileset dir="${webapp.test}">
		                <exclude name="**/*.java" />
		            </fileset>
		        </copy>
		    </target>
    
	<!-- Compile End -->
	
	
	
	<!-- JUnit Start -->

	    <path id="build.classpath">
	    	<pathelement location="${basedir}/WebContent/WEB-INF/classes"/>
	    </path>  
	
		
		<path id="cover-test.classpath">
			<fileset dir="${lib.dir}">
				<include name="**/*.jar"/> 			
			</fileset>
		</path>
		
		<path id="test.run.classpath">
			<path refid="cover-test.classpath"/>
			<path refid="build.classpath"/>
		</path>
		
	    <target name="JUnitAllTests" depends="copy">
	 	    <delete dir="${junit.output.dir}"/>
	        <mkdir dir="${junit.output.dir}"/>
	        <junit fork="yes" printsummary="withOutAndErr">
	            <formatter type="xml"/>
	        	<batchtest fork="yes" todir="${junit.output.dir}">
	    		    <fileset dir="test">
	    		      <include name="**/*Test*.java"/>
	    		      <exclude name="**/AllTests.java"/>
	    		    </fileset>
	        	</batchtest>
	            <classpath refid="test.run.classpath"/>
	        </junit>
		 	 <antcall target="junitreport"/>
		</target>
		
	    <target name="junitreport" >
	        <junitreport todir="${junit.output.dir}">
	            <fileset dir="${junit.output.dir}">
	                <include name="TEST-*.xml"/>
	            </fileset>
	            <report format="frames" todir="${junit.output.dir}"/>
	        </junitreport>
	    </target>
	<!-- JUnit End -->
	
</project>

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics