SpringBoot项目的两种发布方式(jar包和war包)

SpringBoot项目的两种发布方式(jar包和war包)

springboot入门和项目示例这个项目和application.yml配置端口号和访问url路径基础上进行修改

1、使用jar包方式发布

1.1、在pom.xml中添加一个SpringBoot的构建的插件

<build><plugins><plugin><groupId>org.springframework.boot</groupId><!--自动检测项目中的 main 函数--><artifactId>spring-boot-maven-plugin</artifactId></plugin></plugins></build>

1.2、在maven视图中,双击“package”,在target中会产生xxx.jar包

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

1.3、将生成的jar包复制到任意文件夹中,通过java -jar 命令运行该jar包

在这里插入图片描述
浏览器访问结果如下:
在这里插入图片描述

2、使用war包方式发布

2.1、在pom.xml文件中将jar修改为war

<packaging>war</packaging>

2.2、设置tomcat启动器依赖范围

<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-tomcat</artifactId><!--tomcat启动器依赖范围--><scope>provided</scope></dependency>

2.3、设置war包的名字

<plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-war-plugin</artifactId><configuration><warName>hello</warName></configuration>
</plugin>

2.4、修改启动类

package cn.fpl;
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 SpringbootHelloworldApp extends SpringBootServletInitializer {@Overrideprotected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {return builder.sources(SpringbootHelloworldApp.class);}public static void main(String[] args) {SpringApplication.run(SpringbootHelloworldApp.class, args);}
}

2.5、先双击clean后,再确保项目可以正常运行后,双击packag进行打包

在这里插入图片描述
在这里插入图片描述

2.6、将生成的war包放到本机tomcat安装目录下的webapps目录下

在这里插入图片描述

2.7、返回bin目录找到startup.bat双击打开运行tomcat服务器,或直接管理员身份在webapps目录下打开命令行运行

在这里插入图片描述
可以发现,运行的war包可以通过自定义的url名字进行访问,服务器端口并不是在application.yml中配置的端口8090,而是本机的tomcat服务器的端口8080

上面时两种打包发布和运行的方式,希望可以帮助到大家!!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/625612.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

腾讯云服务器多少钱?2024年腾讯云服务器报价明细表

腾讯云服务器租用价格表&#xff1a;轻量应用服务器2核2G3M价格62元一年、2核2G4M价格118元一年&#xff0c;540元三年、2核4G5M带宽218元一年&#xff0c;2核4G5M带宽756元三年、轻量4核8G12M服务器446元一年、646元15个月&#xff0c;云服务器CVM S5实例2核2G配置280.8元一年…

测试人,你还在写用例吗?是什么在支撑着你写?

测试交付的过程&#xff0c;通常是伴随的是一个测试用例生命周期过程&#xff0c;通常有测试需求分析、测试用例设计、测试用例实现、测试用例执行&#xff0c;以及测试用例管理等几个阶段组成。 为什么要有测试用例&#xff1f; 首先测试用例这是测试岗位的基本交付物之一。开…

第10章-特殊函数-贝塞尔函数

贝兹函数又称贝塞尔曲线&#xff0c;是计算机图形学中相当重要的参数曲线&#xff0c;在绘图工具上看到的钢笔工具就是来做这种矢量曲线的。 贝塞尔函数由线段和节点组成&#xff0c;节点是可拖动的支点&#xff0c;线段像可伸缩的皮筋&#xff0c;通过 控制曲线上的4个点&…

LeetCode 144. 94. 145. 二叉树的前序,中序,后续遍历(详解) ੭ ᐕ)੭*⁾⁾

经过前面的二叉树的学习&#xff0c;现在让我们实操来练练手~如果对二叉树还不熟悉的小伙伴可以看看我的这篇博客~数据结构——二叉树&#xff08;先序、中序、后序及层次四种遍历&#xff08;C语言版&#xff09;&#xff09;超详细~ (✧∇✧) Q_Q-CSDN博客 144.二叉树的前序遍…

GitHub要求所有贡献代码的用户在2023年底前启用双因素认证

到2023年底&#xff0c;所有向github托管的存储库贡献代码的用户都必须启用一种或多种形式的2FA。 双重身份认证 所谓双重身份认证&#xff08;Two-Factor Authentication&#xff09;&#xff0c;就是在账号密码以外还额外需要一种方式来确认用户身份。 GitHub正在大力推动双…

你知道程序员如何利用citywork实现财富自由吗?

周末到了&#xff0c;我要去citywalk寻找心灵的呼吸&#xff01;”有谁没有设想过疲惫的工作日之后好好地去走一走&#xff0c;亲近大自然呢&#xff1f;谁又不想在闲暇之余唤起对生活的趣味呢&#xff1f;可是对于我们悲催的打工人而言&#xff0c;没有citywalk&#xff0c;只…

代码随想录训练营day2

一、有序数组的平方 1.1暴力解法 可以直接使用C当时自带的排序算法库函数进行计算&#xff0c;属于暴力解法&#xff0c;复杂度较高&#xff0c;那么有没有运行效率更高的算法思想呢&#xff1f; class Solution { public:vector<int> sortedSquares(vector<int&g…

1.5 面试经典150题 - 轮转数组

轮转数组 给定一个整数数组 nums&#xff0c;将数组中的元素向右轮转 k 个位置&#xff0c;其中 k 是非负数。 注意&#xff1a;本题需要原地操作 class Solution(object):def rotate(self, nums, k):""":type nums: List[int]:type k: int:rtype: None Do not…

class_5:在c++中一个类包含另一个类的对象叫做组合

#include <iostream> using namespace std;class Wheel{ public://成员数据string brand; //品牌int year; //年限//真正的成员函数void printWheelInfo(); //声明成员函数 };void Wheel::printWheelInfo() {cout<<"我的轮胎品牌是&#xff1a;"<…

任务10:安装配置Java开发环境

任务描述 知识点&#xff1a; Java开发工具Maven配置 重 点&#xff1a; 安装配置Java开发工具 IDEA为IDEA配置自定义Maven&#xff08;国内源&#xff09; 内 容&#xff1a; 下载并配置JDK 1.8下载安装IDEA为IDEA配置自定义MavenWindows环境安装配置Hadoop 任务指导…

C++学习笔记(二十二)

一、函数对象 1. 函数对象概念 概念&#xff1a; 重载函数调用操作符的类&#xff0c;其对象常称为函数对象函数对象使用重载的 () 时&#xff0c;行为类似函数调用&#xff0c;也叫仿函数 本质&#xff1a; 函数对象(仿函数)是一个类&#xff0c;不是一个函数 2. 函数对…

Leetcode面试经典150题刷题记录 —— 二叉搜索树篇

Leetcod面试经典150题刷题记录-系列Leetcod面试经典150题刷题记录——数组 / 字符串篇Leetcod面试经典150题刷题记录 —— 双指针篇Leetcod面试经典150题刷题记录 —— 矩阵篇Leetcod面试经典150题刷题记录 —— 滑动窗口篇Leetcod面试经典150题刷题记录 —— 哈希表篇Leetcod面…

Python从入门到网络爬虫(正则表达详解)

Python 正则表达式 正则表达式是一个特殊的字符序列&#xff0c;它能帮助你方便的检查一个字符串是否与某种模式匹配。 Python 自1.5版本起增加了re 模块&#xff0c;它提供 Perl 风格的正则表达式模式。 re 模块使 Python 语言拥有全部的正则表达式功能。 compile 函数根…

C#/.NET学习值得推荐的在线论坛和技术社区

前言 本文来源于知乎的一个提问&#xff0c;C#/.NET程序员学习有哪些值得推荐的在线论坛和技术社区&#xff1f;其实很早之前DotNetGuide就已经新增了C#/.NET/.NET Core充电站栏目&#xff0c;当然大家有更好的.NET相关学习站点和资源欢迎PR投稿&#x1f91e;。 GitHub - YSGS…

GO——cobra

定义 Cobra 是 Go 的 CLI 框架 CLI&#xff0c;command-line interface&#xff0c;命令行界面 使用 注意 第一个cmd的USE即使命名了也没有意义&#xff0c;一般保持和项目名一致。 示例 package mainimport ("fmt""github.com/spf13/cobra" )func …

C语言中对变量的理解

变量(variable)是程序中不可或缺的组成单位&#xff0c;是最基本的存储单元。 1.什么是变量&#xff1f; Ⅰ.概念&#xff1a; 内存中的一个存储区域&#xff0c;该区域的数据可以在同一类型范围内不断变化。 通过变量名&#xff0c;可以访问这块内存区域&#xff0c;获取里…

Nginx虚拟主机配置

目录 1.什么是虚拟主机&#xff1f; 2.准备工作(本机IP&#xff1a;10.12.153.222) 3.基于端口配置 4.基于IP配置 5.基于域名配置 1.什么是虚拟主机&#xff1f; 虚拟主机是一种特殊的软硬件技术&#xff0c;它可以将网络上的每一台计算机分成多个虚拟主机&#xff0c;每个…

Spring Boot3 系列:Spring Boot3 跨域配置 Cors

文章目录 什么是CORS&#xff1f;Spring Boot 如何配置CORS?前端代码注解配置全局配置过滤器配置 注意事项 什么是CORS&#xff1f; CORS&#xff0c;全称是“跨源资源共享”&#xff08;Cross-Origin Resource Sharing&#xff09;&#xff0c;是一种Web应用程序的安全机制&…

信息安全导论期末复习

信息安全导论 第二章 古典密码 凯撒密码 维吉尼亚密码 仿射加密 这是一种扩展的移位变换 示例&#xff1a; 仿射加密难点在于求逆元 近代密码 希尔密码 现代密码 数学基础 辗转相除法 用于求最大公因子&#xff0c;最大公因子的值就是所列式子中最后一个不为零的余…

6.3、SDN在云计算中的应用

目录 一、SDN概念 1.1、传统网络机制 1.2、SDN网络机制 1.3、二者区别 1.4、SDN架构 二、云数据中心 2.1、公有云环境特点 2.2、两大挑战 2.3、云数据中心引入SDN技术解决两大挑战 三、SDN云计算解决方案 3.1、SDN云计算解决方案之控制平面openflow协议 3.1.…