ubuntu 下安装hudson, 集成Git

由于项目需要, 最近在研究hudson与GIt的集成, 安装过程中遇到了一些问题, 在这里记录一下:

我的项目是, git, 并安装gitosis, 再用hudson做集成管理。

1.  首先尝试在ubuntu 下直接安装 hudson, 按照官网的指示,安装成功

http://wiki.hudson-ci.org/display/HUDSON/Installing+Hudson+on+Ubuntu

2. 启动 hudson

   sudo service hudson start

3.  访问 Http://localhost:8080

配置hudson,选择自动安装jdk, 自动安装maven,自动安装ant

在此过程中遇到错误, 访问sun去下载jdk总是报连接timeout,

由于公司是有proxy的, 所以需要在在plugin 的advanced 下面配置公司的代理服务器;

又出现新的错误, 报socket错误, 错误是下载jdk过程遇到的, 于是取消自动下载jdk, 配置成系统中已有的jdk路径,ok!

在 available plugin 下选择 git plugin, 安装, 并重启hudson。

  4. new job--> 选则 git, 并填好git 路径 --> save

 5.  build project, 问题出现了,这里报告 cannot clone git ....., host key verification failed!!!

      google,baidu之,尝试了很多方法都没有解决。 以至于我的系统都被我该坏了, 悲剧的重装系统!!

 6.  最后终于解决了, 我的git服务器, 跟hudson服务器是同一台机器,又使用了gitois做认证, 似乎存在认证的问题, 解决办法是

不使用linux的命令安装hudson,而是下载个hudson.war, 把它部署到tomcat下。

再次build project, ok, checkout lastest code successfully!!

7.  集成maven

     项目也用到了maven,添加maven build 命令 clean, package。 

再次build project, 出现  java_home is not defined correctly we cannot execute java

很奇怪,已经配置了jdk,还报这个错误,解决办法:

安装另一个jre, hardcode mvn中的javahome,如下红色代码所示:

vi :~/.hudson/tools/Maven/bin/mvn

if [ -z "$JAVACMD" ] ; then

  if [ -n "$JAVA_HOME"  ] ; then

    if [ -x "$JAVA_HOME/jre/sh/java" ] ; then

      # IBM's JDK on AIX uses strange locations for the executables

      JAVACMD="$JAVA_HOME/jre/sh/java"

    else

     # JAVACMD="$JAVA_HOME/bin/java"

      JAVACMD="/usr/lib/jvm/java-6-openjdk/jre/bin/java"

    fi

  else

    JAVACMD="`which java`"

  fi

fi


再次build Project, 刚才的错误消失了!

8. 郁闷啊, 新的错误又出现了:

[ERROR] COMPILATION ERROR : 
[INFO] -------------------------------------------------------------
[ERROR] Unable to locate the Javac Compiler in:
  /usr/lib/jvm/java-6-openjdk/jre/../lib/tools.jar
Please ensure you are using JDK 1.4 or above and
not a JRE (the com.sun.tools.javac.Main class is required).
In most cases you can change the location of your Java
installation by setting the JAVA_HOME environment variable.

真TMD的悲剧, 问题一堆堆啊, 又是一阵搜索, 解决办法:

在刚才配置的jre路径: usr/lib/jvm/java-6-openjdk/ 创建 dir: lib

然后丢个 tools.jar 进去!!

再次build, OK!!!

内牛满面啊!!!

猜你喜欢

转载自mountain2010.iteye.com/blog/1060848