1,編譯經過以後,想要將編譯好的war包放到遠程服務器上,並解壓java
unzipBus.sh的腳本以下:git
#!/bin/bash
jar -xvf bus.war
編譯後報錯:jar:Command not foundshell
腳本在服務器上執行都沒有問題,jar命令咋就not found了呢。bash
緣由: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。app
2,Jenkins配置本身選擇分支進行編譯ui
此功能須要安裝插件---Git Parameter插件。安裝好插件後,新建項目,general -->參數化過程當中,多了Git Parameter選項。選擇該選項,填寫相關配置spa
選擇 源碼管理-->Git 選擇,填寫倉庫。其中branches to build 中,填寫 $mbranch .其實就是git parameter中設置的變量名稱。插件
保存後,在項目中增長了Build with Parameters選項,以下圖所示。code