SpringBoot:springboot项目打包jar包
pom.xml:加入依赖,插件
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.7.1</version><relativePath/> <!-- lookup parent from repository --></parent><groupId>com.bjpowernode</groupId><artifactId>026-springboot-jar</artifactId><version>0.0.1-SNAPSHOT</version><properties><java.version>1.8</java.version></properties><dependencies><!--tomcat处理jsp的依赖--><dependency><groupId>org.apache.tomcat.embed</groupId><artifactId>tomcat-embed-jasper</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency></dependencies><build><!--resources插件,把jsp编译到META-INF/resources--><resources><resource><directory>src/main/webapp</directory><targetPath>META-INF/resources</targetPath><includes><include>**/*.*</include></includes></resource><!--如果使用了mybatis,而且mapper文件放在src/main/java目录下--><resource><directory>src/main/java</directory><!--这里没有写targetPath默认编译到Class目录下--><includes><include>**/*.xml</include></includes></resource><!--把src/main/resources下面所有的文件,都包含到class目录--><resource><directory>src\main\resources</directory><includes><include>**/*.*</include></includes></resource></resources><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin></plugins></build></project>
springboot配置文件:application.properties:
#设置端口号、上下文访问路径
server.port=9002
server.servlet.context-path=/myboot#设置视图解析器
spring.mvc.view.prefix=/
spring.mvc.view.suffix=.jsp
创建mian.jsp:
<%--Created by IntelliJ IDEA.User: DELLDate: 2022/7/16Time: 12:25To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%String path = request.getContextPath();String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() + path + "/";
%>
<html>
<head><title>Title</title><base href="<%=basePath%>">
</head>
<body>main.jsp用来显示数据 ${data}
</body>
</html>
创建控制器:HelloController:
package com.bjpowernode.controller;import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;@Controller
public class HelloController {@RequestMapping("/hello")public ModelAndView hello(){ModelAndView mv =new ModelAndView();mv.addObject("data","SpringBoot打jar包");mv.setViewName("main");//转发到main.jspreturn mv;}
}
主启动类:Application:启动项目
package com.bjpowernode;import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;@SpringBootApplication
public class Application {public static void main(String[] args) {SpringApplication.run(Application.class, args);}}
测试运行:
打jar包:
需要在pom.xml中指定打包名称,和Maven插件:maven-plugin的版本号
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.7.1</version><relativePath/> <!-- lookup parent from repository --></parent><groupId>com.bjpowernode</groupId><artifactId>026-springboot-jar</artifactId><version>0.0.1-SNAPSHOT</version><properties><java.version>1.8</java.version></properties><dependencies><!--tomcat处理jsp的依赖--><dependency><groupId>org.apache.tomcat.embed</groupId><artifactId>tomcat-embed-jasper</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency></dependencies><build><!--指定打包名称--><finalName>myboot</finalName><!--resources插件,把jsp编译到META-INF/resources--><resources><resource><directory>src/main/webapp</directory><targetPath>META-INF/resources</targetPath><includes><include>**/*.*</include></includes></resource><!--如果使用了mybatis,而且mapper文件放在src/main/java目录下--><resource><directory>src/main/java</directory><!--这里没有写targetPath默认编译到Class目录下--><includes><include>**/*.xml</include></includes></resource><!--把src/main/resources下面所有的文件,都包含到class目录--><resource><directory>src\main\resources</directory><includes><include>**/*.*</include></includes></resource></resources><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><!--打包jar包,有jsp文件时,必须指定maven-plugin插件的版本是1.4.2.RELEASE--><version>1.4.2.RELEASE</version></plugin></plugins></build></project>
先clean,在package:
打包成功:
打开jar包所在的目录,输入cmd,以命令行的形式运行springboot的应用:
输入命令
可以看到端口号是9002 ,地址myboot:在浏览器运行
可以写一个脚本在Linux服务器上运行
总结:
war和jar区别:
打包成war包:
需要一个服务器,有服务器才能执行,服务器启动的时候需要占用资源,而且还占用端口号,项目是放到服务器里面取的,这种方式是服务器占用比较多,启动tomcat,再启动应用才行,好处是能够充分应用这个服务器的能力,他们是独立的 ,能利用tomcat做一些请求和操作
打包成jar包:
比较小巧一点,不依赖服务器,用起来比较简单和方便,不需要做过多的配置,jar包里面有内嵌的tomcat,但是内置的比不上独立的服务器,在某些功能上呢比独立的服务器要弱
SpringBoot:springboot项目打包jar包相关推荐
- 阿里云SDK和SpringBoot maven项目中jar包冲突的解决办法
stringboot项目在引用阿里云短信sdk时,出现jar包冲突问题,项目可以正常启动,但是启动会报如图错误 解决办法,在maven中查找到冲突的jar,并用exclusions隔离冲突的jar & ...
- 如何使用idea把自己的项目打包jar包发给别人使用
当我们把项目开发完毕了之后,我们不能把开发的源代码发给别人使用,原因有两个,一个是如果发给不会用的人那你发了也是白发,另一个是如果发给会用的人那这样的话你的项目漏洞别人也可以轻易找到,找到了你的项目b ...
- idea将项目打包(jar包/war包)
文章目录 方法1 maven插件打包 方法2 idea打war包 方法3 idea打jar包 方法1 maven插件打包 <artifactId>hello</artifactId& ...
- 【SpringBoot】项目打成 jar 包后关于配置文件的外部化配置
在未进行任何处理的情况下,SpringBoot 会默认使用项目中的 application.properties 或者 application.yml 来读取项目所需配置. 我这里只记录几种自己所用到 ...
- springboot maven项目打jar包
通过eclipse,执行 maven install; 报错 [ERROR] COMPILATION ERROR : [INFO] ---------------------------------- ...
- java jar 启动项目,SpringBoot项目运行jar包启动的步骤流程解析
SpringBoot项目在开发中,方便快捷,有一点原因就是SpringBoot项目可以打jar包运行:把jar包直接扔服务器上,然后运行jar包就能访问项目接口了.下面介绍SpringBoot项目打j ...
- SpringBoot项目打jar包和war包
目录 一. SpringBoot项目打war包 二. SpringBoot项目打jar包 背景:使用Idea编辑器 一. SpringBoot项目打war包 步骤: 在pom.xml文件中的<b ...
- idea springboot 项目打jar包
idea springboot 项目打jar包 1.打包前确认项目可以正常运行,打开Project Structure 快捷键 Ctrl+Shift+Alt+S(F4),或者点击下图图标: 2.将代码 ...
- 关于SpringBoot项目通过jar包启动之后无法读取项目根路径静态资源
前言:这个是昨天晚上在部署一个项目的时候发现的,在此记录一下 关于SpringBoot项目通过jar包启动之后无法读取项目根路径静态资源 问题描述 在部署了一个项目之后,打开项目页面进行测试,发现有一 ...
最新文章
- 在鱼眼和全向视图图像的深度学习方法
- Python 爬虫实现天气查询(可视化界面版)
- python3命令记忆技巧_Python3学习笔记-回忆并复述是加强记忆的好方式!
- PPIO创始人王闻宇:从PPTV到PPIO,创业路上的挑战与思考
- SQL 调试:无法启动 T-SQL 调试。未能附加到 SQL Server 进程
- [POI2007]POW-The Flood
- python导入包的输入法_python 模块和包的导入
- 进度条小飞机移动动画
- discuz加密解密,可参考下
- pandownload限速原因及解决方案
- 那个分分钟处理 10 亿节点图计算的 Plato,现在怎么样了?
- 让Google earth叠加中文地图
- word文档添加多个目录
- 9530 blackberry 上网
- 【python】根据图片链接(地址)抓取图片
- TCP协议接入电信物联网AEP(Aiot)新平台
- python3 输出中文、日文等等乱码问题的解决办法
- 2018全球机器学习技术大会议程抢鲜看!
- 三 网络数据分析(1)R语言简单操作
- 仿微信div可编辑ctrl+enter换行,enter发送
热门文章
- 用《捕鱼达人3》讲解Cocos引擎3D技术(一):加载鱼的模型和播放动画
- Spring Cloud 学习笔记一 微服务架构
- 利用vue数据驱动视图的思想实现走马灯(文末附代码)
- 七大查找算法(Java版)
- linux tbz,TBZ文件扩展名 - 什么是.tbz以及如何打开? - ReviverSoft
- 软件采购必备:软件供应商评估表 之六(共七)
- 手机驱蚊软件测试工程师,手机驱蚊是否实用?编辑肉身亲做实测
- qrobot开发总结之利用第三方TTS软件开发中文TTS
- java表盘时钟的设计思路_初学js 自制表盘时钟很简单
- Python 用米粒填充国际象棋盘