跳到主要内容

运行您的应用程序

DeepSeek V3 中英对照 Running Your Application

将应用程序打包为 jar 文件并使用嵌入式 HTTP 服务器的最大优势之一在于,你可以像运行其他应用程序一样运行你的应用。这个示例适用于调试 Spring Boot 应用程序。你不需要任何特殊的 IDE 插件或扩展。

备注

以下选项最适合在本地运行应用程序进行开发。有关生产部署,请参阅为生产环境打包您的应用程序

备注

本节仅涵盖基于 jar 的打包方式。如果你选择将应用打包为 war 文件,请参阅你的服务器和 IDE 文档。

从 IDE 运行

你可以直接从你的 IDE 中将 Spring Boot 应用作为一个 Java 应用程序运行。不过,首先你需要导入你的项目。导入步骤因你的 IDE 和构建系统而异。大多数 IDE 都可以直接导入 Maven 项目。例如,Eclipse 用户可以从 文件 菜单中选择 导入…​现有的 Maven 项目

如果无法直接将项目导入到 IDE 中,你可以通过使用构建插件来生成 IDE 元数据。Maven 提供了适用于 EclipseIDEA 的插件。Gradle 则为 多种 IDE 提供了插件支持。

提示

如果你不小心运行了一个 Web 应用程序两次,你会看到一个“端口已被占用”的错误。Spring Tools 用户可以使用 Relaunch 按钮而不是 Run 按钮,以确保任何现有的实例都被关闭。

作为打包应用程序运行

如果你使用 Spring Boot 的 Maven 或 Gradle 插件来创建一个可执行的 jar 文件,你可以使用 java -jar 命令来运行你的应用程序,如下例所示:

$ java -jar target/myapplication-0.0.1-SNAPSHOT.jar
shell

也可以通过启用远程调试支持来运行打包的应用程序。这样做可以让您将调试器附加到打包的应用程序上,如下例所示:

$ java -agentlib:jdwp=server=y,transport=dt_socket,address=8000,suspend=n \
-jar target/myapplication-0.0.1-SNAPSHOT.jar
shell

使用 Maven 插件

Spring Boot Maven 插件包含一个 run 目标,可用于快速编译和运行你的应用程序。应用程序以展开的形式运行,就像在你的 IDE 中一样。以下示例展示了一个典型的 Maven 命令来运行 Spring Boot 应用程序:

$ mvn spring-boot:run
shell

你可能还想使用 MAVEN_OPTS 操作系统环境变量,如下例所示:

$ export MAVEN_OPTS=-Xmx1024m
shell

使用 Gradle 插件

Spring Boot Gradle 插件还包含一个 bootRun 任务,该任务可用于以展开形式运行你的应用程序。每当你应用 org.springframework.bootjava 插件时,bootRun 任务就会被添加,如下例所示:

$ gradle bootRun
shell

你可能还想使用 JAVA_OPTS 操作系统环境变量,如下例所示:

$ export JAVA_OPTS=-Xmx1024m
shell

热替换

由于 Spring Boot 应用程序是纯 Java 应用程序,因此 JVM 热交换应该可以直接使用。JVM 热交换在可替换的字节码方面有些限制。对于更完整的解决方案,可以使用 JRebel

spring-boot-devtools 模块还支持快速应用程序重启。有关详细信息,请参阅“操作指南”中的热插拔部分。