- 深入實踐Spring Boot
- 陳韶健
- 1020字
- 2019-01-04 03:26:51
1.4 運行與發布
本章實例工程的完整代碼可以使用IDEA直接從GitHub的https://github.com/chen-fromsz/spring-boot-hello.git中檢出,如圖1-15所示,單擊Clone按鈕將整個項目復制到本地。

圖1-15 檢出實例工程
1.4.1 在IDEA環境中運行
在IDEA中打開Run菜單,選擇Edit Configuration打開Run/Debug Configurations對話框,在配置界面的左邊側邊欄中選擇增加一個Application或Spring Boot配置項目,然后在工作目錄中選擇工程所在的根目錄,主程序選擇代碼清單1-3創建的類:springboot.example.Application,并將配置保存為hello,如圖1-16所示。
然后選擇Run或Debug運行hello配置項目。如果啟動成功,將在控制臺中輸出類似如下信息:
"D:\Program Files\Java\jdk1.8.0_25\bin\java" ..... :: Spring Boot :: (v1.3.2.RELEASE) ...... Starting Servlet Engine: Apache Tomcat/8.0.30 ...... Tomcat started on port(s): 8080 (http) ......
從上面的輸出中可以看出,Tomcat默認開啟了8080端口。要訪問這個應用提供的服務,可以在瀏覽器的地址欄中輸入http://localhost:8080/。這樣就可以看到我們期望的輸出字符:hello。

圖1-16 Spring Boot應用配置
1.4.2 將應用打包發布
上面操作演示了在IDEA環境中如何運行一個應用。如果我們想把應用發布出去,需要怎么做呢?可以將代碼清單1-1中的Maven配置增加一個發布插件來實現。如代碼清單1-4所示,增加了一個打包插件:spring-boot-maven-plugin,并增加了一行打包的配置:<packaging>jar</packaging>,這行配置指定將應用工程打包成jar文件。
代碼清單1-4 包含打包插件的Maven配置
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>springboot.example</groupId> <artifactId>spring-boot-hello</artifactId> <version>1.0-SNAPSHOT</version> <packaging>jar</packaging> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.3.2.RELEASE</version> </parent> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <executions> <execution> <goals> <goal>repackage</goal> </goals> </execution> </executions> </plugin> </plugins> </build> </project>
這樣就可以在IDEA中增加一個打包的配置,打開Run/Debug Configurations對話框,選擇增加配置一個Maven打包項目,在工作目錄中選擇工程所在根目錄,在命令行中輸入package,并將配置保存為mvn,如圖1-17所示。
運行mvn打包項目,就可以將實例工程打包,打包的文件將輸出在工程的target目錄中。
如果已經按照1.1.3節的說明安裝了Maven,也可以直接使用Maven的命令打包。打開一個命令行窗口,將路徑切換到工程根目錄中,直接在命令行輸入mvn package,同樣也能將項目打包成jar文件。執行結果如下:

圖1-17 Maven打包配置
...... [INFO] --- maven-jar-plugin:2.5:jar (default-jar) @ spring-boot-hello --- [INFO] Building jar: E:\ideworkspace\spring-boot-hello\target\spring-boot-hello- 1.0-SNAPSHOT.jar [INFO] [INFO] --- spring-boot-maven-plugin:1.3.2.RELEASE:repackage (default) @ spring-b oot-hello --- [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 21.450 s [INFO] Finished at: 2016-05-08T16:54:44+08:00 [INFO] Final Memory: 23M/118M [INFO] ------------------------------------------------------------------------
打包成功后,在工程的target目錄中將會生成jar文件spring-boot-hello-1.0-SNAPSHOT.jar。在命令行窗口中切換到target目錄中,運行如下指令,就能啟動應用。
java -jar spring-boot-hello-1.0-SNAPSHOT.jar
如果希望按照傳統的做法,將工程發布成war文件,應當將代碼清單1-4的Maven配置<packaging>jar</packaging>改成<packaging>war</packaging>,這樣就可以打包成war文件。打包完成后將war文件放置在Tomcat的webapp路徑中,啟動Tomcat就能自動運行程序。
這里需要注意的是,如果自主使用Tomcat運行應用,在安裝JDK時必須配置JAVA_HOME環境變量,同時JDK要求1.8以上的版本,Tomcat必須是8.0以上的版本。
我更加喜歡打包成jar,然后使用Spring Boot的嵌入插件Tomcat運行應用。本書所有實例都可以打包成jar直接運行。即使對于一個包含很多頁面、圖片、腳本等資源的復雜應用系統,這種方法也是可行的,并且打包成jar,更方便項目發布在Docker上運行,這些將在后面的章節中詳細介紹。
- Practical Game Design
- Java Web應用開發技術與案例教程(第2版)
- HTML5 and CSS3 Transition,Transformation,and Animation
- C語言程序設計
- Jupyter數據科學實戰
- 領域驅動設計:軟件核心復雜性應對之道(修訂版)
- 常用工具軟件立體化教程(微課版)
- 軟件測試實用教程
- C#開發案例精粹
- MySQL入門很輕松(微課超值版)
- Cocos2d-x by Example:Beginner's Guide(Second Edition)
- 零基礎學C++(升級版)
- Python程序設計教程
- TypeScript圖形渲染實戰:2D架構設計與實現
- 前端架構設計