eclipse ant jacoco

首先 在eclipse建立一個ant工程


現在貼出部分代碼HelloWorldTest.java

public class HelloWorldTest extends junit.framework.TestCase{

    public void testNothing() {
    }
    
    public void testWillAlwaysFail() {
        fail("An error message");
    }
    
}

HelloWorld.java

package oata;

//public class HelloWorld {
//    public static void main(String[] args) {
//        System.out.println("Hello World");
//     }
//}
import org.apache.log4j.Logger;
import org.apache.log4j.BasicConfigurator;

public class HelloWorld {
    static Logger logger = Logger.getLogger(HelloWorld.class);

    public static void main(String[] args) {
        BasicConfigurator.configure();
        logger.info("Hello World");          // the old SysO-statement
    }
}

build.xml

<?xml version="1.0" encoding="utf-8"?>
<!--<project default="main" basedir=".">
    <target name="main" depends="compile, compress" description="Main target">
       <echo>Building the .jar file.</echo>
    </target>
    <target name="compile" description="Compilation target">
       <javac srcdir="${basedir}/src/example" />
    </target>
    <target name="compress" description="Compression target">
       <jar jarfile="HelloWorld.jar" basedir="${basedir}/src/example" includes="*.class" />
    </target>
</project>-->
<!--
<project>

    <target name="clean">
        <delete dir="build"/>
    </target>

    <target name="compile">
        <mkdir dir="build/classes"/>
        <javac srcdir="src" destdir="build/classes"/>
    </target>

    <target name="jar">
        <mkdir dir="build/jar"/>
        <jar destfile="build/jar/HelloWorld.jar" basedir="build/classes">
            <manifest>
                <attribute name="Main-Class" value="oata.HelloWorld"/>
            </manifest>
        </jar>
    </target>

    <target name="run">
        <java jar="build/jar/HelloWorld.jar" fork="true"/>
    </target>

</project>-->
<project name="HelloWorld" basedir="." default="main">

    <property name="src.dir"     value="src"/>

    <property name="build.dir"   value="build"/>
    <property name="classes.dir" value="${build.dir}/classes"/>
    <property name="jar.dir"     value="${build.dir}/jar"/>
    <property name="main-class"  value="oata.HelloWorld"/>
    <property name="lib.dir"     value="lib"/>
	<property name="report.dir"  value="${build.dir}/junitreport"/>
	
	
	 <path id="classpath">
	        <fileset dir="${lib.dir}" includes="**/*.jar"/>
	    </path>
	
	<path id="application" location="${jar.dir}/${ant.project.name}.jar"/>
    
	
	<target name="clean">
        <delete dir="${build.dir}"/>
    </target>

    <target name="compile">
        <mkdir dir="${classes.dir}"/>
        <javac srcdir="${src.dir}" destdir="${classes.dir}" classpathref="classpath"/>
    <!--add-->
    	 <copy todir="${classes.dir}">
    	      <fileset dir="${src.dir}" excludes="**/*.java"/>
    	 </copy>
    
    
    </target>

    <target name="jar" depends="compile">
        <mkdir dir="${jar.dir}"/>
        <jar destfile="${jar.dir}/${ant.project.name}.jar" basedir="${classes.dir}">
            <manifest>
                <attribute name="Main-Class" value="${main-class}"/>
            </manifest>
        </jar>
    </target>

    <target name="run" depends="jar">
    	<java fork="true" classname="${main-class}">
       <!-- <java jar="${jar.dir}/${ant.project.name}.jar" fork="true"/>-->
    	<classpath>
    		   <path refid="classpath"/>
    		   <path refid="application"/>
    		    <!--<path location="${lib.dir}/${ant.project.name}.jar"/>-->
    	</classpath>
    	</java>
    </target>
	<target name="junit" depends="jar">
	         <mkdir dir="${report.dir}"/>
	            <junit printsummary="yes">
	                <classpath>
	                    <path refid="classpath"/>
	                    <path refid="application"/>
	                </classpath>
	                
	                <formatter type="xml"/>
	                
	                <batchtest fork="yes" todir="${report.dir}">
	                    <fileset dir="${src.dir}" includes="*Test.java"/>
	                </batchtest>
	            </junit>
	        </target>
	
	<target name="junitreport">
	            <junitreport todir="${report.dir}">
	                <fileset dir="${report.dir}" includes="TEST-*.xml"/>
	                <report todir="${report.dir}"/>
	            </junitreport>
	  </target>
	
    <target name="clean-build" depends="clean,jar"/>

    <target name="main" depends="clean,run"/>

	
	
	 
	
</project>
log4j.properties

log4j.rootLogger=DEBUG, stdout

log4j.appender.stdout=org.apache.log4j.ConsoleAppender

log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%m%n
ant build 執行之後,獲得結果。

待補充。。。



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章