第一步:生成一個可以使用 Java -jar
執行的 Jar 文件
1. 首先你需要為你的項目安裝插件 ***spring-boot***插件, 如下: ```apply plugin: 'spring-boot'```以便生成一個spring-boot項目的jar。
2. 然后你需要為你的項目選擇安裝一個內置容器, 我使用是Jetty: ```apply plugin: 'jetty'```
3. 眾所周知,我們經常會給我們的JAVA項目設置運行時的參數,所以我們得告訴spring-boot從哪里讀取參數,以及讀取哪些參數。這里我們可以使用 ```systemProperties = System.properties```作為值設置在bootRun里面,這樣spring-boot就可以讀取命令行后面```-D```攜帶的參數。
4. 然后依次執行Gradle的任務: build -> jar -> bootRepackage 就可以得到我們期待的Jar文件, 名為 demo.jar,位於項目主目錄下 build/libs下面。
第二步:在 Ubuntu上注冊一個開機啟動的 Service
1. 首先我們需要在Ubuntu上注冊一個開機啟動的服務。 這里需要知道的是Ubuntu下的Service位於 ```/etc/init.d/``` 目錄下。所以我們需要在這里新建一個 bash腳本,命名為 demoservice。
2. 接着我們在腳本定義一個service必須具備的幾個方法 **start**, **stop**以及**restart**.
3. 本文章僅先介紹start方法里面的主要內容,即:運行我們的Jar文件。此處我們使用 ```nohup java -jar /path/to/jar/file/demo.jar &```命令來讓我們的service可以在后台運行,不會因為當前用戶關閉terminal而停止。
4. 如何讓我們的服務可以開機自動啟動: 運行: ```sudo update-rc.d demoservice defaults```
OK, 現在我們的springboot項目就已經是ubuntu的一個開機自動啟動的服務了。
————————————————————————————————————————————————————————————
下篇文章會詳細介紹編寫service的一些細節以及項目運行參數的設置。