返回介绍

1.4 运行与发布

发布于 2025-04-26 13:26:31 字数 4787 浏览 0 评论 0 收藏

本章实例工程的完整代码可以使用 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 上运行,这些将在后面的章节中详细介绍。

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。