作者:许振坪,http://blog.csdn.net/benkaoya

1.前言

最近在研究持续集成,摸索了很多持续集成的工具,Apache Continuum也包括其中。既然飞过,那就留下点什么吧。

2.简介

截止书稿时,相对于其他传统的继续集成工具,Apache Continuum 算是一个新秀。对于持续集成的入门者来说,选择Apache Continuum 那就对了。理由如下:

  • 易于安装:Continuum的安装很简单,只要下载和释放 ZIP 文件,运行命令行程序,就可以运行了。
  • 容易配置:基于 Web 的界面使得配置项目很容易。而且,还不需要安装 Web 服务器,因为Continuum内置了 Jetty Web 服务器。
  • 支持Windows:Continuum支持在Windows操作系统,可以作为 Windows 服务运行。

严重声明:截止书稿时, Continuum的最新版本是 apache-continuum-1.4.2,它不支持带有中文的SVN版本库路径。希望未来的版本能解决这个问题。

3.环境

我是在Windows环境下安装的Apache Continuum,环境如下:

所需软件

版本

服务器操作系统

Windows 7

Java JDK版本

jdk-7u72-windows-i586.exe

apache-continuum版本

apache-continuum-1.4.2-bin.zip

4.安装

4.1. 安装java

这个很简单,我的安装路径是C:\Program Files\Java\jdk1.7.0_72。
在继续之前,先在PATH环境变量中添加java的安装路径,即将”C:\Program Files\Java\jdk1.7.0_72\bin”加入PATH环境变量中,而且要放在最前面,否则使用过程会出现问题。至于为什么后续会解释。

4.2. 安装apache-continuum

apache-continuum-1.4.2-bin.zip是个绿色软件,无需安装,解压开就算安装完毕了,我解压的路径是D:\apache-continuum-1.4.2。
接下来就是启动服务,整个过程是在命令行中进行的,启动cmd,将当前路径切换到D:\apache-continuum-1.4.2\bin\,输入命令continuum.bat console即可执行服务,如下所示。

  1. D:\apache-continuum-1.4.2\bin>continuum.bat console
  2. wrapper  | --> Wrapper Started as Console
  3. wrapper  | Launching a JVM...
  4. jvm 1    | Wrapper (Version 3.2.3) http://wrapper.tanukisoftware.org
  5. jvm 1    |   Copyright 1999-2006 Tanuki Software, Inc.  All Rights Reserved.
  6. jvm 1    |
  7. jvm 1    | 2015-03-02 00:21:50.735:INFO:oejs.Server:jetty-8.1.7.v20120910
  8. jvm 1    | 2015-03-02 00:21:50.769:INFO:oejs.NCSARequestLog:Opened D:\apache-continuum-1.4.2\logs\2015_03_01.request.log
  9. jvm 1    | 2015-03-02 00:21:50.778:INFO:oejdp.ScanningAppProvider:Deployment monitor D:\apache-continuum-1.4.2\contexts at interval 1
  10. jvm 1    | 2015-03-02 00:21:50.785:INFO:oejd.DeploymentManager:Deployable added: D:\apache-continuum-1.4.2\contexts\continuum.xml
  11. jvm 1    | 2015-03-02 00:21:53.926:INFO:oejpw.PlusConfiguration:No Transaction manager found - if your webapp requires one, please configure one.
  12. jvm 1    | 2015-03-02 00:21:54.598:INFO:oejsh.ContextHandler:started o.e.j.w.WebAppContext{/continuum,file:/D:/apache-continuum-1.4.2/apps/continuum/},./apps/continuum
  13. jvm 1    | 2015-03-02 00:21:54.599:INFO:oejsh.ContextHandler:started o.e.j.w.WebAppContext{/continuum,file:/D:/apache-continuum-1.4.2/apps/continuum/},./apps/continuum
  14. jvm 1    | 2015-03-02 00:21:54.599:INFO:oejsh.ContextHandler:started o.e.j.w.WebAppContext{/continuum,file:/D:/apache-continuum-1.4.2/apps/continuum/},./apps/continuum
  15. jvm 1    | 2015-03-02 00:21:54.672:INFO:/continuum:Initializing Spring root WebApplicationContext
  16. jvm 1    | 2015-03-02 00:22:29.968:INFO:oejsh.ContextHandler:started o.e.j.w.WebAppContext{/continuum,file:/D:/apache-continuum-1.4.2/apps/continuum/},./apps/continuum
  17. jvm 1    | 2015-03-02 00:22:30.239:INFO:oejsh.ContextHandler:started o.e.j.w.WebAppContext{/continuum,file:/D:/apache-continuum-1.4.2/apps/continuum/},./apps/continuum
  18. jvm 1    | 2015-03-02 00:22:33.232:INFO:oejsh.ContextHandler:started o.e.j.w.WebAppContext{/continuum,file:/D:/apache-continuum-1.4.2/apps/continuum/},./apps/continuum
  19. jvm 1    | 2015-03-02 00:22:34.148:INFO:oejs.AbstractConnector:Started SelectChannelConnector@0.0.0.0:8080

也可以将continuum注册为windows系统服务,这样电脑重启后,continuum服务就会自己启动。注册服务很简单,执行continuum.bat install命令即可,如下所示:

  1. D:\apache-continuum-1.4.2\bin>continuum.bat install
  2. wrapper  | Apache Continuum installed.
  3. D:\apache-continuum-1.4.2\bin>continuum.bat start
  4. wrapper  | Starting the Apache Continuum service...
  5. wrapper  | Apache Continuum started.

4.3. 疑难杂症

安装过程中遇到的难点:

  1. jvm 1    | org.apache.jasper.JasperException: PWC6345: There is an error in invoking javac.  A full JDK (not just JRE) is required

原因:安装jdk的时候会往c盘的
系统目录(C:\Windows\System32\java.exe)拷贝Java的执行文件java.exe,使用 java -jar
start.jar 来启动 Jetty 时则优先使用的是系统目录下的
java.exe,这样Jetty的Jsp解析器将无法解析JDK的的安装目录(我的安装路径是C:\Program
Files\Java\jdk1.7.0_72)。

也就是说要用” C:\Program Files\Java\jdk1.7.0_72\bin\java” -jar
start.jar来启动Jetty才行。如何保证java优先引用安装目录下的执行程序?设置PATH环境便令咯,而且要把C:\Program
Files\Java\jdk1.7.0_72\bin放在最前面。(什么?如何设置PATH环境变量?问百度吧。)
严重提示:需要提醒的是设置完PATH环境变量后,要重启cmd,否则新设置的PATH环境变量不生效。如果新设置的PATH要对windows服务失效,还得重启电脑。

5. 使用

5.1. 开始体验

在浏览器中输入http://localhost:8080/continuum,就能看到效果了

如果无法打开,就要查看日志了,在控制台启动的服务,日志输出到控制台就能看到,如果作为winsome服务启动,日志输出到安装路径的log目录下。

5.2. 注册管理员信息

安装成功后,会提示你要先注册管理员信息,然后用管理登录。

5.3. 新建项目

到这里,大家对着界面自己倒腾也就能搞定了,我就不多说了。唯一需要提醒的是一下两点:

  • 构建方式有很多种,如果你对其他诸如Ant、Maven不了解,那就选择shell项目,就是用命令行在自定义编译、链接的过程。
  • 而对于Scm Url,设置格式如下,但不支持中文(我捣鼓了很久,还是没搞清楚怎样才能支持中文路径)。

scm:svn:https://xzp:svn@192.168.1.101/svn/DVR_BuBiao

持续集成 之 apache-continuum的更多相关文章

  1. Jenkins +Maven+Tomcat+SVN +Apache项目持续集成构建

    详解Jenkins +Maven+Tomcat+SVN +Apache项目持续集成 一:前言 1. Jenkins jenkins版本大全http://mirrors.jenkins-ci.org/ ...

  2. Apache DolphinScheduler 的持续集成方向实践

    今天给大家带来的分享是基于 Apache DolphinScheduler 的持续集成方向实践,分享的内容主要为以下六点: " 研发效能 DolphinScheduler CI/CD 应用案 ...

  3. 【Jenkins持续集成(一)】SonarQube 入门安装使用教程

    一.前言 持续集成管理平台不只是CI服务器,是一系列软件开发管理工具的组合. 源码版本管理:svn.git 项目构建工具:Maven.Ant 代码质量管理:Sonar(Checkstyle.PMD.F ...

  4. 持续集成与Devops关系

    什么是持续集成 持续集成(Continuous Integration,简称CI),是一种软件开发实践,在实践中指只要代码有变更,就自动运行构建和测试,反馈运行结果.通俗一点来讲,就是绑定项目的代码仓 ...

  5. Dubbo入门到精通学习笔记(三):持续集成管理平台之SVN版本管理系统的安装和使用

    文章目录 持续集成管理平台介绍 持续集成介绍 持续集成管理平台的组成 持续集成实践介绍 即将学习 SVN版本管理系统的安装 安装 Subversion + Apache 安装 jsvnadmin 简单 ...

  6. 使用Maven+Nexus+Jenkins+Svn+Tomcat+Sonar搭建持续集成环境(一)

    前言     但凡一个略有规模的项目都需要一个持续集成环境的支撑,为什么需要持续集成环境,我们来看一个例子.假如一个项目,由A.B两位程序员来协作开发,A负责前端模块,B负责后端模块,前端依赖后端.A ...

  7. Jenkins + svn + maven 构建持续集成环境搭建

    Jenkins简介 Jenkins是一个开源软件项目,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能. Jenkins是基于Java开发的一种持续集成工具,用于监控持续重复的工作,功能包括: ...

  8. Jenkins+ANT+SVN快速搭建持续集成环境

    伟大的语言都从helloworld开始,这里我们用Jenkins+ANT+SVN来搭建这一套持续集成环境. 环境准备: 一台已经配置好Jenkins和Ant的机器. 项目准备: 用Ecplise建立一 ...

  9. jenkins + Git 搭建持续集成环境

    持续集成通过自动化构建.自动化测试以及自动化部署加上较高的集成频率保证了开发系统中的问题能迅速被发现和修复,降低了集成失败的风险,使得系统在开发中始终保持在一个稳定健康的集成状态.jenkins是目前 ...

随机推荐

  1. 浅谈web前端就业的学习路线

    初级前端 主要学习三个部分:HTML,CSS,JavaScript 一.html + css部分: 这部分特别简单,到网上搜资料,书籍视频非常多.css中盒子模型,流动,block,inline,层叠 ...

  2. C# @字符用法

    1.用 @ 符号加在字符串前面表示其中的转义字符“不”被处理. 如果我们写一个文件的路径,例如"D:/文本文件"路径下的text.txt文件,不加@符号的话写法如下: string ...

  3. RouterOS(ROS)修改vrrp的mac地址

  4. Java内部类总结

    内部类是一种编译器现象,与虚拟机无关.编译器将会把内部类翻译成用美元符号$分隔外部类名与内部类名的常规类文件,而虚拟机对此一无所知.编译器为了引用外部类,生成了一个附加的实例域this$0 为什么要用 ...

  5. go learning notes

    1)  cgo $go install test.go # command-line-arguments /usr/bin/ld: unrecognized option '--build-id=no ...

  6. Java的常见误区与细节

    网上转来的 昨天整整一天,我都都呆在图书里.本打算找一些书学习“正则表达式”,很失望,没找到有这部分的内容的书.发现了一本<Java深入解析>,其中涉及了很多平时没有注意的一些误区,也许开 ...

  7. 前端开发面试题收集 HTML

    Doctype是什么?说明特点. <!doctype>声明必须处于HTML文档的头部,在标签之前. <!doctype>声明不是一个HTML标签,是一个用于告诉浏览器使用哪种H ...

  8. Preorder, Inorder, and Postorder非递归总结

    Preorder, Inorder, and Postorder Iteratively Summarization[1] 1.Pre Order Traverse public List<In ...

  9. 论山寨手机与Android 【11】移动网络规范的合纵连横

    上一章我们讨论了SmartPhone BP部分的硬件系统,接下去我们将讨论SmartPhone BP部分的软件系统.所谓BP,指的是基带处理器(Baseband Processor),又称为通讯处理器 ...

  10. Android Studio安装使用图文教程

    原文 http://jingyan.baidu.com/article/1876c852a25cb4890b1376fa.html Google I/O开发者大会上宣布,Android Studio ...