在Java開發項目時常常要把正在開發的項目發佈到測試服務器中去測試,通常的話是要把項目先打成war包,而後把war包發佈到服務器中,關閉服務器, 最後從新啓動服務器,雖然這過程不是很繁瑣,但若是是多個工程都要發佈的時候,發佈的過程就會比較繁瑣,因此福音來了……java
經過 編寫shell 腳原本完成這些操做,只要執行一個shell腳本,項目就能夠自動發佈到服務器了,用起來仍是比較方便的。linux
第一步:在linux中安裝svn。(這個能夠參照另一篇博客:http://simplelife.blog.51cto.com/9954761/1729931 ),具體到這篇博客,安裝svn是爲了但是使用svn中的一些命令。shell
第二步:在linux安裝maven。(參照:http://simplelife.blog.51cto.com/9954761/1743977 )vim
第三步:在linux中的任意一個目錄下,最好本身新建一個目錄,如ucenter目錄tomcat
1
2
3
4
5
|
mkdir /home/softs/ucenter
cd ucenter
svn co http:
//svnserver/mypro/trunk ./ #從指定的svn地址中檢出代碼到當前目錄
此時須要輸入一些svn的用戶名和密碼,輸入以後肯定使用就是了。
|
執行:svn co http://svnserver/mypro/trunk/ ./服務器
此時svn中的代碼就已經檢出到服務器中了……maven
在當前目錄下執行:svn up svn
能夠更新svn中最新的代碼,返回svn的版本測試
進入ssm-parent目錄中,執行命令(maven的命令):mvn -U clean installspa
進入simple-ssm中執行相同的操做:
此時simple-ssm中就多了一個目錄:target,這個工程的war包就在其中
此時項目war包已經生成了,接下來就能夠將這個war複製到tomcat服務器中,而後重啓服務器就能夠了。
也就是最前面所說的,上述這些更新代碼、打包,移動war包到服務器,重啓服務器的操做均可以用一個簡單的shell腳原本執行。
++++++++++++++++++++++++++++編寫發佈要執行的shell腳本++++++++++++++++++++++++++++++++
在ucenter目錄中(隨便哪一個目錄,以這個目錄爲例)
新建ssm-parent.sh文件:
1
2
|
touch ssm-parent.sh
vim ssm-parent.sh
|
編寫:
保存後退出。
給文件賦予權限
1
|
chmod
755
ssm-parent.sh
|
執行:
1
|
./ssm-parent.sh
|
新建simple-ssm.sh文件:
touch simple-ssm.sh
vim simple-ssm.sh
編寫:
保存後退出。
給文件賦予權限
1
|
chmod
755
simple-ssm.sh
|
執行:
1
|
./simple-ssm.sh
|
這樣就將simple-ssm工程發佈完成了。
之後每次只要將代碼寫完以後,提交到svn中,在服務器中就能夠前後執行這兩個shell腳本(固然還能夠有別的工程的shell腳本),就能夠輕鬆的發佈項目了,是否是很便捷!
執行:
1
2
|
./ssm-parent.sh
./simple-ssm.sh
|
到此項目時時發佈就能夠實現了。