运行 Spring Boot 应用的 3 种方式!
运行 Spring Boot 应用的 3 种方式
1、在 IDE 中运行
在 Eclipse、IDEA 中直接运行,又有以下两种方式。
jar 包方式
Spring Boot 默认采用 jar 包内嵌 Tomcat、Jetty 等 Server 的方式,并需要提供一个含有 main 方法的主类。这个时候,直接在 IDE 中运行这个 main 方法就能启动 Spring Boot 应用了。
war 包方式
如果你的应用改装成了 war 包方式部署,这个时候就需要在 IDE 中配置 Server,然后在 Server 中加入你的 Spring Boot 项目,最后运行这个 Server 即可。
如何改装成 war 包方式运行请看这篇文章《Spring Boot 发布 jar 包转为 war 包秘籍》
2、打包运行
当你的 Spring Boot 准备提测或者上线,都需要打成 jar 包或者 war 包运行,war 包方式这里不说直接丢到 Server 里面运行即可,这里介绍直接运行 jar 包的方式。
$ java -jar javastack-0.0.1-SNAPSHOT.jar
这种方式也支持开启远程调试,如:
$ java -Xdebug -Xrunjdwp:server=y,transport=dt_socket,address=8000,suspend=n -jar javastack-0.0.1-SNAPSHOT.jar
3、用插件运行
可以在 IDE 或者命令行中使用 Maven 和 Gradle 插件来运行 Spring Boot 应用。
1)Maven Plugin
$ mvn spring-boot:run
更多详情请访问以下官方链接。
https://docs.spring.io/spring-boot/docs/current/maven-plugin/
2)Gradle Plugin
$ gradle bootRun
更多详情请访问以下官方链接。
https://docs.spring.io/spring-boot/docs/current/gradle-plugin/reference/html/
最后来一张 Maven 的截图。
总结
在 IDE 中推荐使用插件的方式来运行,因为可以集成更多的插件化的功能,如:热部署、区别不同环境配置等。
在非 IDE 中请使用 java -jar 的方式,或者直接打包在 Server 中运行!
如果有收获,欢迎点赞转发!
原文发布时间为:2019-1-2
本文作者:栈长
本文来自云栖社区合作伙伴“ Java技术栈”,了解相关信息可以关注“javastack”微信公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
协同过滤(ALS)的原理及Python实现
提到ALS相信大家应该都不会觉得陌生(不陌生你点进来干嘛[捂脸]),它是协同过滤的一种,并被集成到Spark的Mllib库中。本文就ALS的基本原理进行讲解,并手把手、肩并肩地带您实现这一算法。 原理篇 我们用人话而不是大段的数学公式来讲讲ALS是怎么一回事。 1.1 你听说过推荐算法么 假如我是豆瓣的CEO,很多豆瓣的用户在豆瓣电影上都会对电影进行评分。那么根据这个评分数据,我们有可能知道这些用户除了自己评过分的电影之外还喜欢或讨厌哪些电影吗?这就是一个典型的推荐问题,解决这一类问题的算法被称为推荐算法。 1.2 什么是协同过滤 协同过滤的英文全称是Collaborative Filtering,简称CF。注意,这不是一款游戏!从字面上分析,协同就是寻找共同点,过滤就是筛选出优质的内容。 1.3 协同过滤的分类 一般来说,协同过滤推荐分为三种类
- 下一篇
LevelDB 入门 —— 全面了解 LevelDB 的功能特性
本节我们将全面了解一下 LevelDB 的各种特性。LevelDB 的开发语言是 C++,考虑到会使用 C++ 语言的同学不是很多,在本节我们将使用 Java 语言来描述 LevelDB 的特性。其它语言栈的同学也不必担心,因为不同语言操纵 LevelDB 的接口 API 都是一样的,使用起来大同小异。 打开和关闭LevelDB 的数据存储在一个特定的目录中,里面有很多数据文件、日志文件等。使用 LevelDB API 来打开这个目录,就得到了 db 的引用。后续我们就使用这个 db 引用来执行读写操作。下面的代码是 Java 语言描述的伪代码。 打开数据库有很多选项可以配置,比如设置块缓存大小、压缩等 基础 APILevelDB 用起来就像 HashMap,但是比 HashMap 要稍微弱一些,因为 put 方法不能返回旧值,delete 操作也不知道对应的 key 是否真的存在。 原子批处理对于多个连续的写操作如果因为宕机有可能导致这多个连续的写操作只完成了一部分。为此 LevelDB 提供了批处理功能,批处理操作就好比事务,LevelDB 确保这一些列写操作的原子性执行,要么全部...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- Windows10,CentOS7,CentOS8安装Nodejs环境
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- CentOS6,CentOS7官方镜像安装Oracle11G
- Red5直播服务器,属于Java语言的直播服务器
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- SpringBoot2整合Thymeleaf,官方推荐html解决方案
- SpringBoot2整合Redis,开启缓存,提高访问速度