springboot web项目打jar或者war包并运行的实现
作者:老焦沉淀淀 发布时间:2022-11-20 03:01:59
(一)springboot web项目打jar包
1、打包
两种打包方式
maven命令打包
切换目录到工程根下,pom.xml所在位置,运行maven的打包命令
mvn clean package -Dmaven.test.skip=true
IDEA 工具执行maven任务打包
会在xxx项目模块下/target目录下生成xxx-0.0.1-SNAPSHOT.jar
2、运行jar包
启动运行(切换目录到target下,执行命令)
F:\Java\idea-workspace\shixun02\web1>cd springboot1
F:\Java\idea-workspace\shixun02\web1\springboot1>cd target
F:\Java\idea-workspace\shixun02\web1\springboot1\target>java -jar web1-0.0.1-SNAPSHOT.jar
注意:如果启动springboot项目时,想自己设置启动服务器端口,命令如下:
java -jar web1-0.0.1-SNAPSHOT.jar --server.port=8081
(二)springboot web项目打war包,独立部署到tomcat运行
使用maven创建的springboot项目,默认是jar包,springboot还有自己带的tomcat。现在需要将项目打包,并部署到服务器tomcat下面,步骤如下:
1.修改pom.xml文件。将jar修改为war。
<groupId>com.youzhong</groupId>
<artifactId>web1</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>war</packaging>
2.在pom.xml文件中将build节点中设置finalName为server.context-path中的路径。就是项目名称(打包的名称)。
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
<finalName>web1</finalName>
</build>
3. 在spring-boot-starter-web依赖中移除tomcat模块。
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</exclusion>
</exclusions>
</dependency>
4. 添加servlet依赖。
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
<scope>provided</scope>
</dependency>
5. 新建启动类。(需要和之前的启动类在同一级目录)
public class SpringBootStartApplication extends SpringBootServletInitializer {
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
// 注意这里要指向原先用main方法执行的Application启动类
return builder.sources(Web1Application.class);
}
}
注意:
Web1Application.class就是springboot生成的工程默认启动类
如:Web1Application.class即有@SpringBootApplication注解的主启动类 。
6. 使用mvn命令打包
mvn clean package -Dmaven.test.skip=true
或者
使用IDEA中的maven任务
7. 将war包拷贝部署到tomcat的webapps目录下面,启动tomcat并测试。
来源:https://blog.csdn.net/lucky_678/article/details/103010935


猜你喜欢
- resultMap的Colum和property属性1: resultMap标签当我们的数据库字段与实体类的属性不一致时,就需要使用该标签进
- 本文实例讲述了C#抓取当前屏幕并保存为图片的方法。分享给大家供大家参考。具体分析如下:这是一个C#实现的屏幕抓取程序,可以抓取整个屏幕保存为
- 本文主要汇总了在开发过程中,使用List和Dictionary常用的方法,例如增、删、改、查、排序等等各种常用操作。在平时的开发过程中,Li
- 1.Spring Gateway概述1.1 什么是Spring Cloud GatewaySpring Cloud Gateway是Spri
- 什么是 MyBatis ?MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有
- Intellij IDEA 公司 JetBrains 推出了一种新字体:JetBrains Mono,它是专为开发人员设计的。为什么说它是专
- java带T的时间格式化public static void main(String[] args) { &nb
- 一、什么是抽象工厂模式为创建一组相关或相互依赖的对象提供一个接口,而且无需指定他们的具体类。抽象工厂模式是所有形态的工厂模式中最为抽象和最具
- 之前一篇文章研究完横向二级菜单,发现其中使用了SparseArray去替换HashMap的使用.于是乎自己查了一些相关资料,自己同时对性能进
- 前言本来是打算用C#爬取天气网站上的信息,然后用正则表达过滤有用信息的,但是很淦,正则表达式太难了。无意间找到添加web引用的方式来获取天气
- 目录1. 效果图2. 思路3. 实现步骤3.1 数据Bean类3.2 创建适配器3.3 继承Filterable接口3.4 过滤调用4. 优
- 当时用逆向生成后,实体类中的下划线都被去掉,这时只需要在sqlmap.xml中加以下代码即可。打开mybatis驼峰法则。 <sett
- 本文实例讲述了Android自定义照相机Camera出现黑屏的解决方法。分享给大家供大家参考,具体如下:对于一些手机,像HTC,当自定义Ca
- 前言Android提供了很多种保存应用程序数据的方法。其中一种就是用SharedPreferences对象来保存我们私有的键值(key-va
- 映射匹配兼容性前面我们已经能从表中查询出数据,并将数据封装到模型类中,这整个过程涉及到一张表和一个模型类:之所以数据能够成功的从表中获取并封
- FeignClient设置动态Url1. 需求描述一般情况下,微服务内部调用都是通过注册中心,eureka,zookeeper,nacos等
- Java中List.of()和Arrays.asList()的区别及原因动手写一下,让自己更有印象1.Arrays.asList()可以插入
- 一、项目简述功能: 一套完整的网上花店商场系统,系统支持前台会员的注册 登陆系统留言,花朵的品种选择,详情浏览,加入购物 车,购买花朵等;后
- 这篇文章主要介绍了Java JVM程序指令码实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友
- 在我们编写客户端应用程序时,经常要用到鼠标当前的位置。在C#winform中,可以用Control.MousePosition获得当前鼠标的