jenkins构建启动失败
有一个项目,在启动的时候读取了环境变量,第一次写了一个启动脚本如下
#!/bin/bash --login jarFile=$1 pid=`ps -ef | grep $jarFile | grep 'java' | grep -v 'grep' | awk '{print $2}'` if [ -n "$pid" ]; then echo 'pid exist : '$pid kill -9 $pid echo 'result'$? fi java -jar /opt/app/assets.jar >> /opt/app/assets.out 2>> /opt/app/assets.alarms &
手动在服务器上启动是没问题的,但是jinkins构建,怎么都不成功,因为项目读取了系统的环境变量,jenkins构建一直报环境变量有错,手动启动则不报错,
原因是jenkins用shell脚本启动并没有去载入环境变量导致,修改如下
#!/bin/bash --login jarFile=$1 pid=`ps -ef | grep $jarFile | grep 'java' | grep -v 'grep' | awk '{print $2}'` if [ -n "$pid" ]; then echo 'pid exist : '$pid kill -9 $pid echo 'result'$? fi export BASH_ENV=/etc/profile java -jar /opt/app/assets.jar >> /opt/app/assets.out 2>> /opt/app/assets.alarms &
新增了一句
export BASH_ENV=/etc/profile
指定环境变量,则不再报错