jenkins配置多个JDK
2016-02-04 18:02
447 查看
因项目系统比较多,有的系统编译用sun 的JDK,有的系统需要IBM的JDK。。因此Jenkins中需要配置两个不同版本的JDK。
目前Jenkins上已经配置了sun的JDK。所以需要把IBM的JDK配置上。websphere8.5自带的JDK就是IBM的,所以不需要单独下载了。
1.将IBM 的JDK传输到jenkins构建服务器上。/home/ap/tool/ 目录下
2.登录jenkins
系统管理-系统设置-JDK,配置IBM的JDK
3.重启jenkins
4.进入到相应的job下,设置
选择编译此job用的JDK
5. 编译代码,报错
Error: JAVA_HOME is not definedcorrectly.
We cannot execute/home/ap/tool/IBM_JDK_1.6/java//bin/java
此问题查了一会才知道原因的。。因为此项目是用ant 编译打包的,因此要修改ant命令
#cd /home/ap/ncl/ci_tools/apache-ant-1.9.2/bin
#vi ant
if [ -z "$JAVACMD" ] ;then
if [ -n "$JAVA_HOME" ]; then
# IBM's JDK on AIX uses strange locations for the executables
if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
JAVACMD="$JAVA_HOME/jre/sh/java"
elif [ -x "$JAVA_HOME/jre/bin/java" ] ; then
JAVACMD="$JAVA_HOME/jre/bin/java"
else
# JAVACMD="$JAVA_HOME/bin/java"
JAVACMD="/home/ap/tool/IBM_JDK_1.6/java/bin/java"
fi
else
JAVACMD=`which java 2> /dev/null `
if [ -z "$JAVACMD" ] ; then
JAVACMD=java
fi
fi
fi
(1) 再次编译代码,OK。
(2) 如果修改ant之后,没有生效,可以重启reboot下系统。
(3) 注意:不需要将ibm的jdk配置到/etc/profile中,配置多个会指乱。
目前Jenkins上已经配置了sun的JDK。所以需要把IBM的JDK配置上。websphere8.5自带的JDK就是IBM的,所以不需要单独下载了。
1.将IBM 的JDK传输到jenkins构建服务器上。/home/ap/tool/ 目录下
2.登录jenkins
系统管理-系统设置-JDK,配置IBM的JDK
3.重启jenkins
4.进入到相应的job下,设置
选择编译此job用的JDK
5. 编译代码,报错
Error: JAVA_HOME is not definedcorrectly.
We cannot execute/home/ap/tool/IBM_JDK_1.6/java//bin/java
此问题查了一会才知道原因的。。因为此项目是用ant 编译打包的,因此要修改ant命令
#cd /home/ap/ncl/ci_tools/apache-ant-1.9.2/bin
#vi ant
if [ -z "$JAVACMD" ] ;then
if [ -n "$JAVA_HOME" ]; then
# IBM's JDK on AIX uses strange locations for the executables
if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
JAVACMD="$JAVA_HOME/jre/sh/java"
elif [ -x "$JAVA_HOME/jre/bin/java" ] ; then
JAVACMD="$JAVA_HOME/jre/bin/java"
else
# JAVACMD="$JAVA_HOME/bin/java"
JAVACMD="/home/ap/tool/IBM_JDK_1.6/java/bin/java"
fi
else
JAVACMD=`which java 2> /dev/null `
if [ -z "$JAVACMD" ] ; then
JAVACMD=java
fi
fi
fi
(1) 再次编译代码,OK。
(2) 如果修改ant之后,没有生效,可以重启reboot下系统。
(3) 注意:不需要将ibm的jdk配置到/etc/profile中,配置多个会指乱。
相关文章推荐
- Java Annotation 及几个常用开源项目注解原理简析
- java中的数组与动态数组
- struts2异常处理机制
- struts2拦截器的实现原理及源码剖析
- struts2内置拦截器和自定义拦截器详解(附源码)
- java33:IO 2
- Struts2对AJAX的支持
- Struts2使用OGNL遍历各种map总结
- Struts2的OGNL遍历数组、List、简单的Map
- Struts2中 Result类型配置详解
- 如何让struts2和servlet的共存
- Mybatis分页和Spring的集成
- maven项目spring框架中整合restful
- Struts2返回JSON对象的方法总结
- Spring学习12-Spring利用mock进行单元测试
- Eclipse远程调试Java应用程序
- Spring学习11-Spring使用proxool连接池 管理数据源
- Spring学习11-Spring管理各种数据源
- Spring学习10-SpringMV核心组件2及SpringMVC项目示例
- Spring学习10-SpringMVC原理及核心组件1