我每次修改代码一点东西,都要进行一个从新发布。从新发布的流程大概以下:html
大概四个步骤,时间最长的就是将jar包上传到服务器上面去了。若是包有问题,还有从新进行上面四个步骤,甚是烦人java
在实习中,无心中接触到了Jenkins自动构建工具,那咱们就来了解一下吧。git
shell
能够大体分为两个步骤c#
第一步:Jenkins从git拉去最新代码bash
第二步:Jenkins自动构建服务器
彻底是自动化的,不须要人为干预操做。只要IDEA上传代码到git,Jenkins就能帮你自动构建网络
Jenkins从git拉去最新代码并发
Jenkins自动构建并发布代码maven
Maven执行报错 咱们一般执行Maven命令以下: mvn clean install -Dmaven.test.skip=true
但这样写必报错。由于Jenkins默认会为你加上mvn前缀,,因此你只用
clean install -Dmaven.test.skip=true 便可
能够将Jenkins设置为777,但这是很是不友好的。
具体能够参考如下这篇文章:Jenkins执行脚本提示没有权限的解决办法
BUILD_ID=DONTKILLME,便可防止jenkins衍生进程
具体能够参考如下这篇文章:jenkins 杀死衍生进程
因为博客园不支持上传视频,只能把视频放在第三方平台上了
连接以下
别看我这样简单的搭建完成了,没试过的能够试试,你会发觉坑仍是不少的。
加油啦!!!
osc.sh的脚本
1 #!/bin/bash 2 pid=$(ps -ef | grep com.gdufe.osc.OscApplication | grep 'java' | grep -v grep | awk '{print $2'}) 3 if [ -z "$pid" ]; then 4 echo 'there are not OscApplication process. starting will be continue.' 5 fi 6 if [ -n "$pid" ]; then 7 echo 'java process id is '$pid 8 if ps -p $pid > /dev/null 9 then 10 echo $pid' will be kill' 11 kill -9 $pid 12 fi 13 fi 14 echo 'start OscApplication wait.' 15 nohup java -jar osc.jar com.gdufe.osc.OscApplication >/dev/null 2>error.log & 16 echo 'finish starting OscApplication'