我每次修改代碼一點東西,都要進行一個從新發布。從新發布的流程大概以下: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'