jenkins配置过程中踩过的一些坑
1,编译通过之后,想要将编译好的war包放到远程服务器上,并解压
unzipBus.sh的脚本如下:
#!/bin/bash
jar -xvf bus.war
编译后报错:jar:Command not found
脚本在服务器上执行都没有问题,jar命令咋就not found了呢。
原因:jenkins没有加载环境变量,重新修改shell脚本为:
#!/bin/bash export JAVA_HOME=/opt/jdk1.8.0_151 export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar export PATH=$PATH:$JAVA_HOME/bin jar -xvf bus.war
再次执行:java.io.FileNotFoundException: bus.war (No such file or directory)
明明都在那里,怎么file又not found了,仔细一想,jenkins可能只认识绝对路径
再次修改:
#!/bin/bash export JAVA_HOME=/opt/jdk1.8.0_151 export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar export PATH=$PATH:$JAVA_HOME/bin jar -xvf /opt/app/bus/bus.war
再次构建,success。
2,Jenkins配置自己选择分支进行编译
此功能需要安装插件---Git Parameter插件。安装好插件后,新建项目,general -->参数化过程中,多了Git Parameter选项。选择该选项,填写相关配置
选择 源码管理-->Git 选择,填写仓库。其中branches to build 中,填写 $mbranch .其实就是git parameter中设置的变量名称。
保存后,在项目中增加了Build with Parameters选项,如下图所示。