1. 从IDE中的Run 按钮运行

你可以从IDE中运行Spring Boot应用, 就像一个简单的Java应用, 但是, 你首先需要导入项目。 导入步骤跟你的IDE和构建系统有关。 大多数IDEs能够直接导入Maven项目, 例如Eclipse用户可以选择 File 菜单的 Import… –> Existing MavenProjects 。

如果不能直接将项目导入IDE, 你可以需要使用构建系统生成IDE元数据。 Maven有针对Eclipse和IDEA的插件;Gradle为各种IDEs提供插件。

注:如果意外地运行一个web应用两次, 你将看到一个“端口已在使用中“错误。 为了确保任何存在的实例是关闭的, STS用户可以使用 Relaunch 按钮而不是 Run 按钮。

2. 作为一个可执行的Jar 运行

如果使用Spring Boot Maven或Gradle插件创建一个可执行jar, 你可以使用 java -jar 运行你的应用。 例如:

 
1
2
java -jar target/myproject-0.0.1-SNAPSHOT.jar
 

运行一个打包的程序并开启远程调试支持是可能的, 这允许你将调试器附加到打包的应用程序上:

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

3. 使用Maven插件运行

Spring Boot Maven插件包含一个 run 目标, 它可以用来快速编译和运行应用程序。 应用程序以一种暴露的方式运行, 由于即时“热“加载, 你可以编辑资源。

 
1
mvn spring-boot:run

你可能想使用有用的操作系统环境变量:

 
1
export MAVEN_OPTS=-Xmx1024m -XX:MaxPermSize=128M -Djava.security.egd=file:/dev/./urandom

(“egd”设置是通过为Tomcat提供一个更快的会话keys熵源来加速Tomcat的。 )

4. 使用Gradle插件运行

Spring Boot Gradle插件也包含一个 run 目标, 它可以用来以暴露的方式运行你的应用程序。 不管你什么时候导入 springboot-plugin , bootRun 任务总是被添加进去。

 
1
gradle bootRun

你可能想使用那些有用的操作系统环境变量:

 
1
export JAVA_OPTS=-Xmx1024m -XX:MaxPermSize=128M -Djava.security.egd=file:/dev/./urandom

5. 热交换

由于Spring Boot应用程序只是普通的Java应用, 那JVM热交换( hot-swapping) 应该能出色的工作。 JVM热交换在它能替换的字节码上有些限制, 更全面的解决方案可以使用Spring Loaded项JRebel

Spring Boot — 运行应用程序5种方式的更多相关文章

  1. Spring Boot配置过滤器的两种方式

    过滤器(Filter)是Servlet中常用的技术,可以实现用户在访问某个目标资源之前,对访问的请求和响应进行拦截,常用的场景有登录校验.权限控制.敏感词过滤等,下面介绍下Spring Boot配置过 ...

  2. Spring Boot 整合 Shiro ,两种方式全总结!

    在 Spring Boot 中做权限管理,一般来说,主流的方案是 Spring Security ,但是,仅仅从技术角度来说,也可以使用 Shiro. 今天松哥就来和大家聊聊 Spring Boot ...

  3. Spring Boot应用启动的三种方式

    Spring Boot应用HelloWorld的三种启动方式: 项目的创建可以在http://start.spring.io/网站中进行项目的创建. 首先项目结构: 1.  通过main方法的形式启动 ...

  4. Spring Boot 实现定时任务的 4 种方式

    作者:Wan QingHua wanqhblog.top/2018/02/01/SpringBootTaskSchedule/ 定时任务实现的几种方式: Timer:这是java自带的java.uti ...

  5. Spring Boot集成MyBatis的2种方式

    目录 写在前面 准备工作 配置数据库驱动 配置数据源 原生集成MyBatis 依赖配置 注册MyBatis核心组件 定义并使用映射器 通过MyBatis-Spring-Boot-Starter集成 默 ...

  6. 【websocket】spring boot 集成 websocket 的四种方式

    集成 websocket 的四种方案 1. 原生注解 pom.xml <dependency> <groupId>org.springframework.boot</gr ...

  7. Spring Boot读取配置文件的几种方式

    Spring Boot获取文件总的来说有三种方式,分别是@Value注解,@ConfigurationProperties注解和Environment接口.这三种注解可以配合着@PropertySou ...

  8. Spring Boot读取配置的几种方式

    读取application文件 在application.yml或者properties文件中添加: info.address=USAinfo.company=Springinfo.degree=hi ...

  9. Spring Boot读取配置的 5 种方式

    读取application文件 在application.yml或者properties文件中添加: info.address=USA info.company=Spring info.degree= ...

随机推荐

  1. Error, return code 2 from org.apache.hadoop.hive.ql.exec.mr.MapRedTask

    hive运行查询语句时报错: Error: org.apache.hive.service.cli.HiveSQLException: Error while processing statement ...

  2. Java实现 LeetCode 712 两个字符串的最小ASCII删除和(最长公共子串&&ASCII值最小)

    712. 两个字符串的最小ASCII删除和 给定两个字符串s1, s2,找到使两个字符串相等所需删除字符的ASCII值的最小和. 示例 1: 输入: s1 = "sea", s2 ...

  3. (Java实现) 有重复元素排列问题

    有重复元素的排列问题 [问题描述] 设R={ r1, r2 , -, rn}是要进行排列的n个元素.其中元素r1, r2 , -, rn可能相同.试设计一个算法,列出R的所有不同排列. [编程任务] ...

  4. Spring AOP 扫盲

    关于AOP 面向切面编程(Aspect-oriented Programming,俗称AOP)提供了一种面向对象编程(Object-oriented Programming,俗称OOP)的补充,面向对 ...

  5. 一台电脑如何使用多个git账号?

    git相信大家都在用,一般公司有一个账号,放公司自己架的服务器中,员工自己还有一个github或者gitee的账号,存放自己的一些私有代码.本篇文章总结一下,本人在公司开发机上,使用多个git账号的干 ...

  6. 宝塔部署时,出现“open_basedir restriction in effect”错误

    下面是错误代码: Warning: require(): open_basedir restriction in effect. Warning: require(XXXXXXXXXXX): fail ...

  7. 了解Nginx与PHP的交互?

    Nginx可以接收请求并转发给PHP-FPM. 1.开始深入Nginx与FastCGI协议 通过对Nginx新增Server配置实现了nginx与PHP的一次通信,配置文件非常简单. 从上图的Ngin ...

  8. php 常用的redis操作语法

    String 类型操作 string是redis最基本的类型,而且string类型是二进制安全的.意思是redis的string可以包含任何数据.比如jpg图片或者序列化的对象 $redis-> ...

  9. C# 9.0 新特性之模式匹配简化

    阅读本文大概需要 2 分钟. 记得在 MS Build 2020 大会上,C# 语言开发项目经理 Mads Torgersen 宣称 C# 9.0 将会随着 .NET 5 在今年 11 月份正式发布. ...

  10. matlab-整数规划(非线性规划之蒙特卡洛法(随机取样法))

    首先编写M 文件mengte.m 定义目标函数f 和约束向量函数g,程序如下:function [f,g]=mengte(x);%定义目标函数f和约束向量函数g f=x()^+x()^+*x()^+* ...