`
tooby
  • 浏览: 117305 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

Jenkins+Ant+Java+Junit+SVN

 
阅读更多

一、环境准备

  1. Jenkins:
    1. 到官网下载jenkins.war包:http://jenkins-ci.org/
    2. 安装方法有两种:
      1. 把下载下来的jenkins.war包放到文件夹下,如C:\jenkins,然后打开命令行窗口并进到该目录下,执行java -jar jenkens.war命令,当提示:“Jenkins is fully up and running”时,表示启动成功,这时在浏览器窗口输入:http://localhost:8080/ 就可到jenkins的首页。
      2. 如果有tomcat,把jenkins.war包放在tomcat的webapps文件夹下,启动tomcat时会自动启动jenkins,这时通过http://localhost:8080/jenkins就 可以访问jenkins的首页了。
  2. ANT:

      下载ant并配置ANT_HOME,官网:http://ant.apache.org/

  3、Junit:

      下载junit.jar包,没用过的可参考:http://blog.csdn.net/lengyuhong/article/details/5815017

  4、SVN:

      1、用本地硬盘当SVN仓库:http://wenku.baidu.com/view/12b02f6a011ca300a6c39081.html

      2、SVN服务器搭建和使用:http://www.cnblogs.com/xiaobaihome/tag/SVN/ (推荐用此种方法,后面有原因

二、项目代码:

  环境准备好了之后就可开始写代码、单元测试案例以及ANT用来构建的build.xml文件,这些内容在上一篇ANT task之Junit、JunitReport有讲过,这里不细讲:

1、Java代码:

 ComplexCalculation.java
 SimpleCalculation.java

2、单元测试代码:  

 ComplexCalculationTest.java
 SimpleCalculationTest.java

3、build.xml

复制代码
<?xml version="1.0" encoding="UTF-8"?>
<project name="AntDemo" default="junit" basedir=".">
    <!-- =================================================================== -->
    <!-- 变量设置  -->
    <!-- =================================================================== -->

    <!-- 源代码src路径 -->
    <property name="src.path" value="src/java"/>
    <!-- 单元测试代码路径 -->
    <property name="test.path" value="src/test"/>
    <!-- 编译文件class路径 -->
    <property name="build.path" value="build"/>
    <!-- jar包路径 -->
    <property name="dist.path" value="dist"/>
    <!-- lib包路径 -->
    <property name="lib.path" value="lib"/>
    <!-- 生成报告junit4.xml路径 -->
    <property name="report.path" value="report"/>
        
    <!-- =================================================================== -->
    <!-- 设置classpath -->
    <!-- =================================================================== -->
    <path id="compile.path">        
        <fileset dir="${lib.path}">
            <include name="**/*.jar"/>
        </fileset>
        
        <pathelement path="${build.path}"/>
    </path>     

    <!-- 初始化 -->
    <target name="init">        
        <mkdir dir="${build.path}"/>
        <mkdir dir="${report.path}"/>
        <mkdir dir="${dist.path}"/>
    </target>
    
    <!-- =================================================================== -->
    <!-- 清除历史编译class -->
    <!-- =================================================================== -->
    <target name="clean" description="clean">        
        <delete dir="${build.path}"/>
        <delete dir="${report.path}"/>
        <delete dir="${dist.path}"/>
    </target>

    <!-- =================================================================== -->
    <!-- 编译测试文件,初始化目录 -->
    <!-- =================================================================== -->
    <target name="compile" depends="init">
        <javac srcdir="${src.path}" destdir="${build.path}"  classpathref="compile.path" includeantruntime="true"/>
        <javac srcdir="${test.path}" destdir="${build.path}"  classpathref="compile.path" includeantruntime="true"/>
    </target>      
         
    <!-- =================================================================== -->
    <!-- 执行测试案例 -->
    <!-- =================================================================== -->
    <target name="junit" depends="compile">                
        <junit printsummary="true" fork="true">        
             <formatter type="xml" usefile="true"/>        
            
             <classpath refid="compile.path"/>        
            
            <batchtest fork="on" todir="${report.path}" haltonfailure="no">
                <fileset dir="${build.path}">
                    <include name="**/*Test.class"/>
                </fileset>
            </batchtest>                 
         </junit>        
     </target>
    
    <target name="junit-report" depends="junit">        
        <!-- 产生单元测试报表文档 -->
        <junitreport todir="${report.path}">
            <fileset dir="${report.path}">
                <include name="TEST-*.xml" />
            </fileset>
            
            <report format="frames" todir="${report.path}" />
        </junitreport>
    </target>

    <target name="make-jar" depends="compile" description="make jar file">
          <jar jarfile="${dist.path}/AntDemo.jar">
               <fileset dir="${build.path}">

                <!--除去test文件-->
                <exclude name="**/*Test.class"/>
               </fileset>
          </jar>
     </target>    
    
</project>
复制代码

 

三、配置Jenkins:

  PS:Jenkins可以通过master/slave来支持分布式的job运行,本文运行在master,即Jenkins所在的机器。

  1、打开jenkins首页,新建一个job,输入Item名称,选择 构建一个自由风格的软件项目,点击"OK"  

 

  2、在 源码管理 那里,选择Subversion,在Repository URL后面,输入你的SVN地址。  

      PS:Repository URL使用本地磁盘当仓库这种方法后来我在其它机器上试验时,发现老是报错:svn: E180001: Unable to open an ra_local session to URL。一时没有找到解决办法,大家如果也碰到此问题,可以搭建SVN服务器来管理源代码,我试了,挺好使的。

 

  3、在 构建 那里也可以有两种做法:

   I、选择Execute Windows batch command,在输入框输入如下命令(这里我选择的是这个方法):

      set path=C:\ANT_HOME\Apache-Ant-1.7.0\bin;path  把ant的安装目录添加到path

      ant junit                        执行junit task      

   II、方法I比较麻烦,如果我们设置好了ANT_HOME,可以选择Invoke Ant,然后在targets里面指定我们build.xml里的task name。       

  4、点击保存,然后选择立即构建,执行结果:  

 

分享到:
评论

相关推荐

    Jenkins+SVN+Ant持续集成环境配置笔记

    ### Jenkins+SVN+Ant持续集成环境配置笔记 #### 一、引言 随着软件开发项目的日益复杂化,持续集成(Continuous Integration, CI)已成为现代软件工程中的一个重要组成部分。通过持续集成,团队能够频繁地集成代码...

    Jenkins+Ant+Tomcat持续集成自动化测试平台搭建

    这些插件可能包括源代码管理工具(如Git或SVN)、构建触发器、构建工具(如Maven或Ant)以及自动化测试框架(如JUnit或Selenium)。 接下来,配置Jenkins的工作流: - **创建新Job**:在Jenkins中创建新的构建Job...

    example_Jenkins_ANT

    让我们深入了解一下Jenkins和ANT,以及它们在Java开发中的作用。 **Jenkins** 是一个开源的持续集成(CI)服务器,用于自动化各种软件开发任务,包括编译、测试和部署。它提供了丰富的插件生态系统,可以支持多种构建...

    jenkins安装使用手册(ant版)

    - **安装Ant**:在Jenkins服务器上安装Ant,因为我们将使用Ant脚本来构建Java Web项目。 2. **配置Jenkins**: - **安装必要的插件**:根据项目需求安装所需的插件,例如SVN插件用于版本控制、Ant插件用于构建等...

    Jenkins Maven Svn tomcat 持续集成实战

    1. **安装JDK**:Jenkins基于Java开发,因此需要先安装JDK。 - 下载JDK软件包并解压安装。 - 配置环境变量以全局可用。 2. **安装Tomcat**:用于部署Jenkins Web应用。 - 下载Tomcat并解压。 - 修改`conf/server...

    Jenkins权威指南中文高清

    它支持各种版本控制系统(如Git、SVN)、构建工具(如Maven、Ant)和测试框架,能够自动化软件的构建、测试和部署过程,极大地提升了开发效率和软件质量。 2. **Jenkins安装与配置** 安装Jenkins可以通过下载war...

    jenkins-2.190.2.zip

    7. **集成工具**:Jenkins 可与各种开发工具无缝集成,包括但不限于 Git、SVN、Maven、Gradle、Ant、Junit、SonarQube 等,实现自动化工作流。 8. **邮件通知**:Jenkins 可以配置在构建失败时发送邮件通知,帮助...

    jenkins-2.164.2.zip

    Jenkins 支持多种构建工具,如 Maven、Gradle 和 Ant,可以与各种源代码管理工具(如 Git、SVN 等)无缝集成,实现代码的自动拉取和构建。 Jenkins 的插件生态系统是其强大之处。截至2.164.2版本,已经拥有超过1500...

    ANT详细教程加world文档

    9. **ANT与持续集成**:在持续集成环境中,如Jenkins、Hudson等,ANT经常被用作构建脚本,自动化项目的构建和测试。 10. **Word文档中的教程**:可能涵盖了ANT的基本概念、安装步骤、基本用法、实例解析、高级特性...

    apache-ant-1.10.8-bin.zip

    Apache Ant 是一个基于Java的构建工具,其设计目标是驱动软件构建过程,它以其灵活性和可扩展性在Java开发领域中被广泛使用。这个"apache-ant-1.10.8-bin.zip"文件是一个包含了Ant 1.10.8版本的二进制发行包,用于...

    jenkins_1.596.3.zip

    在提供的压缩包中,"jenkins.war" 是 Jenkins 的核心可执行文件,它是一个 Web 应用程序,基于 Java Servlet 容器运行,如 Apache Tomcat 或内置的 Jetty。当你在服务器上部署 "jenkins.war" 文件时,它会自动创建一...

    apache-ant-1.8.1

    在实际开发中,Apache Ant 1.8.1 可能会与其他工具(如JUnit用于单元测试,Ivy用于依赖管理)一起使用,构建出完整的软件开发流水线。虽然现在已经有了更现代的构建工具,如Gradle和Maven,但Ant因其灵活性和简洁性...

    Jenkins 操作文档

    - **Ant Plugin**:为 Jenkins 添加 Apache Ant 支持。 - **Conditional Build Step**:条件构建步骤,可以根据定义的条件(如构建参数)控制其他构建步骤的执行。 - **Copy To Slave Plugin**:允许将主节点上的...

    Ant.The.Definitive.Guide2.chm

    除此之外,《Ant:权威指南》还会深入探讨Ant与版本控制系统(如CVS或SVN)、持续集成工具(如Hudson或Jenkins)以及其他构建工具(如Maven)的集成。书中也会介绍如何通过JUnit进行单元测试,并将测试结果集成到...

    jenkins用户使用手册

    2. 集成源代码:配置源代码仓库(如Git、SVN等),Jenkins将自动拉取最新代码。 3. 构建触发:可以设置定时触发、代码提交触发、手动触发等多种方式启动构建。 4. 构建过程:通过脚本(如shell、Ant、Maven等)定义...

    ant自动打包

    8. **版本控制集成**:`Ant`可以与Git、SVN等版本控制系统集成,进行提交或打标签等操作。 9. **部署**:打包完成后,可以使用`Ant`的`ftp`或`ssh`任务将应用程序部署到远程服务器。 在提供的`autoPakage`文件中,...

    Jenkins权威指南中文资料

    4. **版本控制系统集成**:Jenkins可以与Git、SVN等版本控制工具集成,自动获取代码更新。讲解如何配置源码管理,设置分支策略,以及拉取代码时的凭证管理。 5. **构建触发与触发器**:介绍不同类型的构建触发方式...

    jenkins入门手册(持续集成服务器的安装配置和使用)

    它通过插件的形式支持多种构建工具(如Maven, Ant等)、测试框架(如JUnit, TestNG等)以及版本控制系统(如Git, SVN等)。此外,Jenkins还提供了丰富的API接口,使得它能够很好地与其他工具和服务进行集成。 #### ...

    ant使用指南

    Apache Ant 是一个由Java编写的构建工具,它主要用于自动化Java项目的构建、编译、测试和部署过程。Ant基于XML,其任务(tasks)通过XML标签来定义,这使得构建脚本具有良好的可读性和可维护性。这个"ant使用指南...

Global site tag (gtag.js) - Google Analytics