作者:大三的土狗

专栏:SpringBoot入门到精通
专栏:MyBatis-Plus

快速导航

  • 前言
    • 1、初始项目
      • 1、创建一个SpringBoot项目
      • 2、编写一个简单的Web项目
      • 3、项目运行效果
    • 2、打包
      • 1、导入坐标
      • 2、Clean
      • 3、Complier编译
      • 4、package打包
      • 5、启动
      • 6、问题
    • 3、Linux环境部署
      • 1、上传jar包
      • 2、运行
      • 3、测试
  • 总结

前言

SpringBoot的打包时打成jar包,不是war包。

  在软件领域,JAR文件(Java归档,英语:Java Archive)是一种软件包文件格式,通常用于聚合大量的Java类文件、相关的元数据和资源(文本、图片等)文件到一个文件,以便开发Java平台应用软件或库。

  JAR文件是一种归档文件,以ZIP格式构建,以.jar为文件扩展名。用户可以使用JDK自带的jar命令创建或提取JAR文件。也可以使用其他zip压缩工具,不过压缩时zip文件头里的条目顺序很重要,因为Manifest文件常需放在首位。JAR文件内的文件名是Unicode文本。

1、初始项目

通过一个简单的项目来打包jar包,来进行SpringBoot打包发布的学习。

SpringBoot的打包与发布可以让前后段分离开发变得方便快捷。

1、创建一个SpringBoot项目

2、编写一个简单的Web项目

TestController代码

package com.example.jar.controller;import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;@RestController
@RequestMapping()
public class TestController {@RequestMapping("/test")public String test() {return "Hello World" +"This is a Jar project";}
}

3、项目运行效果

  在浏览器输入:localhost:8080/test , 显示"Hello World" +“This is a Jar project”

2、打包

1、导入坐标

<plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId>
</plugin>

我们只需要使用 Mavenpackage 指令打包就会在 target 目录下生成对应的 Jar 包。

该插件必须配置,不然打好的 jar 包也是有问题的。

2、Clean

  右侧工具栏maven,点击plugins的clean。

3、Complier编译

  右侧工具栏maven,点击plugins的complier。


4、package打包

右侧工具栏maven,点击plugins的package进行打包。

打包完成后会在左侧项目target文件下生成一个 .jar 文件。

5、启动

1、进入 jar 包所在位置,在 命令提示符 中输入如下命令

java -jar jar-0.0.1-SNAPSHOT.jar

2、成功运行

3、在浏览器测试依然可以正常

6、问题

  可能遇到的问题,打包失败,jar包没有主清单属性,下面的代码粘贴到pom.xml指定位置。

  <build><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><configuration><source>1.8</source><target>1.8</target></configuration></plugin><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><executions><execution><goals><goal>repackage</goal></goals></execution></executions></plugin></plugins></build>

3、Linux环境部署

  上面可知,SpringBoot项目打包的jar包可以在 jdk 环境下运行,比war包更放便,下面我们把jar包部署到linux环境下进行测试。

所需环境:

  • 一台云服务器(Linux系统)或者虚拟机
  • jdk环境

1、上传jar包

  用Xftp或者其他软件把,把刚刚打jar包上传服务器的任意目录。

2、运行

  进入jar文件所在目录,输入nohup java -jar xxx & 命令启动项目。

cd /usr/xmp

 nohup java -jar jar-0.0.1-SNAPSHOT.jar &

注:nohup java -jar xxx & 是后台启动,关闭链接也不会停止运行。

关闭

kill -9 [进程号]

3、测试

  输入ip地址+端口号+测试路径,成功运行。

总结

  以上就是SpringBoot的打包,以及部署到Linux的详细步骤,最后送上一句毒鸡汤:生活不会放弃你,但也不会放过你。

SpringBoot 打包发布相关推荐

  1. springboot打包发布

    一.使用自己的tomcat 1.pom文件中配置(剔除springboot的tomcat) <packaging>war</packaging><dependency&g ...

  2. SpringBoot项目打包发布

    SpringBoot项目打包发布 SpringBoot打包发布jar jar类型项目可以打成jar包 打包流程 导入SpringBoot打包插件 将项目导出成jar包并更新pom文件 使用maven ...

  3. SpringBoot系列三:SpringBoot基本概念(统一父 pom 管理、SpringBoot 代码测试、启动注解分析、配置访问路径、使用内置对象、项目打包发布)...

    声明:本文来源于MLDN培训视频的课堂笔记,写在这里只是为了方便查阅. 1.了解SpringBoot的基本概念 2.具体内容 在之前所建立的 SpringBoot 项目只是根据官方文档实现的一个基础程 ...

  4. 自动打包linux,Linux环境下Springboot自动打包发布功能

    实现核心功能:完成Linux环境下Springboot自动打包发布功能 详细功能: 自动更新Svn最新代码 删除原有打包文件 自动打包 将打包之后的项目文件复制到其他服务器 关闭本地项目进程 重新启动 ...

  5. java restful项目打包_66-JT项目04(项目打包发布/JSON/项目业务)

    关于项目打包/发布问题说明 利用maven工具项目打包 说明: 父级JT 其中包含了2个子级项目 jt-manager 依赖于jt-common.所以项目打包是有顺序的.要先打包被依赖的项目 或者直接 ...

  6. springboot打包docker镜像部署

    springboot打包docker镜像部署 环境准备 机器 vultr一台,centos7 资源下载 jdk8 maven git yum install git docker yum instal ...

  7. springboot打包成war包

    由于springboot默认集成了tomcat,并且启动的时候会启动自身的tomcat,所以想使用springboot打包成war包项目一定要注意. 1.第一步,将maven打包方式改为war包方式 ...

  8. 苹果手机做文件服务器,iOS企业账号打包发布App到自己服务器上

    企业开发者账号打包发布 App 到服务器上的流程 1. App 打包 Xcode 选择 Product - Archive 进行 App 打包. 选择 Export 导出 ipa 安装包. 选择 Sa ...

  9. qt命令行程序启动外部进程_QT之程序打包发布

    1.引言 QT开发完之后,如果直接把exe文件发给别人,是没法直接用的,因为会提示缺少很多库,一种方法是把这些库拷贝出来,一起发过去,但是这样不方便且文件很大,所以需要一种文件打包发布的方法. 2.环 ...

最新文章

  1. 115.什么是SHELL
  2. java中一些入门级技巧
  3. html 纯css 树形结构,纯css实现树形结构方法教程
  4. 动态添加html元素
  5. Silverlight实用窍门系列:27.Silverlight二维旋转+平面渐变+动画,模拟雷达扫描图之基本框架【附带源码实例】...
  6. mysql Table 'performance_schema.session_variables' doesn't exist
  7. 装修的九大风格,快来看看哪种适合你
  8. 怎么把excel表格内的数据导入数据库?
  9. java 线程池 hash_java线程池实例 - Hashsound的个人空间 - OSCHINA - 中文开源技术交流社区...
  10. 【Verilog HDL】2. 4选1数据选择器
  11. 机器学习基石(笔记)
  12. 金笛JDMAIL邮件系统办公管理—文件中转站
  13. 实用工具篇--华为eNSP下载及安装
  14. 计算机制作贺卡教案,WORD电子贺卡制作的优秀教案_电子贺卡
  15. php 三才五格计算,姓名、名字笔划算命五格测试算命计算方法
  16. 不要想当然,相信自己(自己在C中踩过的坑)
  17. 【MATLAB】使用“蒙特卡罗(Monter Carlo)”算法计算不规则图形的面积
  18. [转]ZBrush3官方中文教程 一
  19. 现货白银入门技巧之白银K线卖出信号
  20. [高数][高昆轮][高等数学上][第一章-函数与极限]03.函数的极限

热门文章

  1. 【技术分享】张相於:当当推荐数据系统架构实践
  2. java基本语法、数组、查找、排序
  3. 中个病毒,结果还看饿了,这款病毒真让人迷惑
  4. 华为服务器万兆网卡驱动型号,思科华为常见的10G万兆光模块型号汇总与解析
  5. 电脑装双系统------计算机经验
  6. C语言—关键字_成仙不问道
  7. 天梯赛 L2-030 冰岛人 (25 分) map
  8. 百度c语言贴吧 经典C源程序100例-2
  9. 计算机网络培训PPT
  10. 职称计算机考试模拟题word2007,职称计算机考试模拟题题库(word版,可打印).doc...