- 前言
- 第一部分 基础应用开发
- 第 1 章 Spring Boot 入门
- 第 2 章 在 Spring Boot 中使用数据库
- 第 3 章 Spring Boot 界面设计
- 第 4 章 提高数据库访问性能
- 第 5 章 Spring Boot 安全设计
- 第二部分 分布式应用开发
- 第 6 章 Spring Boot SSO
- 第 7 章 使用分布式文件系统
- 第 8 章 云应用开发
- 第 9 章 构建高性能的服务平台
- 第三部分 核心技术源代码分析
- 第 10 章 Spring Boot 自动配置实现原理
- 第 11 章 Spring Boot 数据访问实现原理
- 第 12 章 微服务核心技术实现原理
- 附录 A 安装 Neo4j
- 附录 B 安装 MongoDB
- 附录 C 安装 Redis
- 附录 D 安装 RabbitMQ
- 结束语
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 上运行,这些将在后面的章节中详细介绍。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论