运行Spring Boot应用程序的不同方法

x33g5p2x  于2022-10-06 转载在 Spring  
字(2.0k)|赞(0)|评价(0)|浏览(349)

在这篇文章中,我们将讨论运行Spring Boot应用程序的不同方式。

Spring boot提供了几种运行Spring boot应用程序的方式。

###我们可以运行Spring Boot应用程序的五种方式

  1. 从IDE中运行
  2. 作为一个打包的应用程序运行
  3. 使用Maven插件
  4. 使用外部Tomcat
  5. 使用Gradle插件

1. 从IDE中运行

你可以从你的IDE中运行一个Spring Boot应用程序,作为一个简单的Java应用程序(Application.java或Main类)。

2. 作为一个打包的应用程序运行

如果您使用Spring Boot Maven或Gradle插件来创建可执行的jar,您可以使用java -jar运行您的应用程序。例如,将目录改为当前项目目录,在cmd.

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

中运行以下命令

也可以在启用远程调试支持的情况下运行打包的应用程序。这样做可以让你把调试器附加到你打包的应用程序上,如下面的例子所示。

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

3. 使用Maven插件

Spring Boot Maven插件包括一个run目标,可用于快速编译和运行您的应用程序。应用程序以爆炸的形式运行,就像在IDE中一样。下面的例子显示了运行Spring Boot应用程序的典型Maven命令:

$ mvn spring-boot:run

我们还可以使用MAVEN_OPTS操作系统环境变量,如下例所示。

$ export MAVEN_OPTS=-Xmx1024m

4. 使用外部Tomcat

我们还可以将Spring Boot网络应用程序WAR文件部署到外部Tomcat servlet容器中。我们可以遵循三个步骤来创建war文件并部署在外部Tomcat servlet容器中。

第一步:改变包类型

<packaging>war</packaging>

第2步:添加spring-boot-starter-tomcat作为提供的范围

<dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-tomcat</artifactId>
      <scope>provided</scope>
  </dependency>

第3步:Spring Boot应用或主类扩展SpringBootServletInitializer

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;

@SpringBootApplication
public class Application extends SpringBootServletInitializer{

    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
        return application.sources(Application.class);
    }
 
    public static void main(String[] args) {
         SpringApplication.run(Application.class, args);
    }
}

关于如何将Spring Boot的WAR文件部署到外部Tomcat上,有一篇单独的文章可供了解
Spring Boot部署WAR文件到外部Tomcat

5. 使用Gradle插件

Spring Boot Gradle插件还包括一个bootRun任务,可用于以爆炸形式运行你的应用程序。只要你应用org.springframework.boot* 和java插件,就会添加bootRun*任务,如下例所示:

$ gradle bootRun

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

$ export JAVA_OPTS=-Xmx1024m

相关文章