Linux下以jar包部署SpringBoot

springboot Jar包 秒部署到Linux服务器运行 最近开发完一个springboot项目,打包成jar包之后要部署到Linux服务器上面运行,我用的nohup java -jar 命令,但是代码更新之后重新部署的时候覆盖原来的项目,又要手动运行 ps -ef|grep jar包名 去查找进程,然后kill -9 去kill进程,有时候nohup进程老是kill不掉,只能多试几次,烦不胜烦。后来专门花时间研究了一下脚本和本地window上传文件到linux服务器的命令,整合了一个启动脚本,顿时项目部署变得无比简单,一分钟内在线上的代码就可以更新了。下面是具 阅读详情

部署

将jar包放到/usr/java目录下

启动

这种方式启动后,不能ctrl+c结束,否则服务也会跟着停止

java -jar cry-mall-backend.jar

改成:

nohup java -jar cry-mall-backend.jar &

停止

根据端口号查进程id,再根据pid kill进程
9095是application.properties中自定义的服务端口号

netstat -lnp|grep 9095

在这里插入图片描述
32528就是进程id

kill -9 32528

脚本启动

别处找的一个启动脚本,经验证应该没什么问题
创建restart.sh文件,放入下面代码,jar包名称改成自己的即可,然后将文件放到jar包同级目录下

#!/bin/bash
jar_pid=`ps -ef|grep -v grep | grep 'java -jar cry-mall-backend.jar '|awk '{ print $2 }'`
echo $jar_pid
if [ ! -n "$jar_pid" ]; then
echo 'will redploy.'
rm -rf nohup.out
nohup java -jar cry-mall-backend.jar &
echo 'redploy success0.'
else
kill -9 $jar_pid
echo 'kill' $jar_pid
rm -rf nohup.out
nohup java -jar cry-mall-backend.jar &
echo 'redploy success1.'
fi

执行脚本

[root@VM_0_5_centos /usr/java]#./restart.sh
执行脚本常见问题
  • 报错:-bash: ./restart.sh: Permission denied
    原因:权限不够
    解决方法:[root@VM_0_5_centos /usr/java]#chmod u+x *.sh

  • 报错:-bash: ./restart.sh: /bin/bash^M: bad interpreter: No such file or directory
    原因: 文件格式不对
    vim restart.sh进入文件后, 执行:set ff 查看一下, 结果发现fileformat=dos, 这种格式有问题
    解决方法: vim restart.sh后执行:set fileformat=unix

在Windows和Linux上部署Spring Boot工程的Jar包指南 在当今快速发展的IT行业,Spring Boot成为了Java开发者首选的框架之一,凭借其轻量级、模块化和无配置文件的特点迅速占据市场。Spring Boot将复杂性封装在框架内部,使得开发者能够快速搭建出独立运行的程序,并且易于配置和部署。生成的Jar包是一个包含了项目所有依赖和类文件的压缩包。使用以下命令可以查看Jar包的内部结构:这将列出Jar包内的所有文件和目录,包括,这是描述了Jar文件本身元数据的信息文件,以及其他如类文件、资源文件等。 阅读详情

相关推荐

ROS2前置基础教程 | 使用CMakeLists.txt编译ROS2节点

答案是有的,那就是cmake工具。cmake通过调用CMakeLists.txt直接生成Makefile。 2.新建CMakeLists.txt 在新建,输入下面内容。 3.编译代码 我们一般会创建一个新的目录,运行cmake并进行编译,这样的好处是不会显得那么乱。 创建好文件夹,接着运行cmake指令,代表到上级目录找。 运行完cmake你应该可以在build目录下看到cmake自动生成的Makefile了,接着就可以运行make指令进行编译 运行完上面的指令,就可以在build目录下发现节点了。ROS2

生活不止眼前的苟且 1万+

linux重启java项目

1.java项目占用的8888端口, 首先查看该进程的进程号: netstat -tunlp|grep 8888 2.占用8888端口的进程id为4179,杀死该进程: kill -9 4179 3.启动java项目: nohup java -jar demo-0.0.1-SNAPSHOT.jar & nohup 意思是不挂断运行命令,当账户退出或终端关闭时,程序仍然运行 当用 nohup 命令执行作业时,缺省情况下该作业的所有输出被重定向到nohup.out的文件中,除非另外指定了输出文

李利科 2992

SAP-MM-PR分配货源并转PO

SAP-MM-PR分配货源并转PO

yanzibing99的博客 5473

linux环境配置后端启动 springBoot 的jar包

linux环境配置后端启动 springBoot 的jar包

nandao158的博客 2018

200smart 模拟量转换库的建立

模拟量当前值 =(工程值 - 工程量下限)*(模拟量上限 - 模拟量下限)/ (工程量上限 - 工程量下限)+ 模拟量下限2. 建立变量表3. 程序。

mmxxoo_xxmmp的博客 4215

从按键开机到I2C隔离:手把手拆解一个智能硬件项目里的MOS管实战配置

本文详细解析了智能硬件项目中MOS管的实战配置,从按键开机电路到I2C总线隔离,全面覆盖电源管理和信号隔离的关键技术。通过PMOS+NMOS组合方案实现可靠的开机功能,并采用双NMOS方案优化I2C通信隔离,提升系统稳定性和信号质量。

weixin_28691741的博客 326

1秒将本地SpringBoot项目jar包部署到Linux环境(看这一篇就够了)

一键将本地已经打包好的SpringBoot项目部署到linux环境,实现秒级部署 迭代步骤: 1. 在windows环境使用命令启动SpringBoot项目 2. 在Linux环境使用命令启动项目 3. 在Linux环境使用脚本启动项目 4. 优化脚本,每次启动时先关闭旧项目 5. 分离依赖,每次上传Linux环境只上传几百k的代码包 6. 搭配IDEA插件,实现在IDEA中一键部署启动

Java全栈开发者 1万+

同态加密与SEAL库实战:CKKS参数调优避坑指南

本文深入探讨了同态加密技术中CKKS方案的参数调优实践,重点解析了SEAL库中`poly_modulus_degree`、`coeff_modulus`和`scale`三大核心参数的配置技巧与避坑指南。通过实战案例展示了如何平衡计算深度、精度与性能,为开发者提供了一套完整的参数优化方法论,帮助避免常见的'scale out of bounds'等错误,显著提升同态加密应用的可靠性和效率。

weixin_29315569的博客 229

Linux 部署 springboot jar 包

因为 springboot 有内置 tomcat 容器,所以我们在 linux 部署 springboot 项目的时候可以不安装 tomcat ,直接用 jar 包进行部署。 一、springboot 相关配置 1、配置文件 springboot 项目中,有如下三个配置文件,一个主配置文件,两个不同环境的配置文件 application.yml 主配置文件内容 spring: profiles: active: prod 2、将项目打成 jar 包 将 springboot 项目打成 j.

wxw1997a的博客 874

对称式目镜设计实例

对称式目镜设计实例

weixin_72050316的博客 1163

【2025软考高级架构师】论文篇——4、论可靠性系统中软件容错技术的应用

软件容错技术对软件的稳定性起着至关重要的作用,尤其是针对互联网性质的软件并发高存在流量峰值等问题,软件容错技术的应用的重要性就不言而喻了。经过这次我所采用的软件容错技术的方法和措施的实施效果后,使我也看到了自己身上的不足之处,我会在今后的架构设计过程中,不断更新自己的知识,不断完善自己的架构设计领域,设计出更好的软件架构,更好的支撑业务平台的运行,提高公司的竞争力,为公司为社会尽一份绵薄之力。

qq837993702的博客 619

还不会在Linux上面如何部署jar包?看这一篇就够了

还不会在Linux上面如何部署jar包?看这一篇就够了

weixin_43267639的博客 6370

17|CI/CD 集成与质量门禁:让精准测试进入发布流水线

本文讲解精准测试如何接入 CI/CD 流水线,并通过质量门禁辅助发布决策。测试开发工程师。Java 后端开发工程师。质量平台 / DevOps 平台建设者。想了解精准测试落地方法的技术负责人。

专注 AI 精准测试平台实战落地,分享从代码 Diff 到回归决策的完整工程闭环。主张“先建数据链路,再上 AI 智能”,让测试从“靠经验”走向“基于风险”。 67

springboot加载本地jar包并部署在linux环境

springboot加载本地jar包并部署在linux环境 记录一下,springboot加载本地jar包,并部署在linux环境下运行,浪费了好长时间,用了很多方法,终于解决了。 解决办法 1:先将需要加载的jar包放到项目中(我放在了根目录下的lib中,其他位置没有试过,应该也是可以的) 2:加入pom依赖(每个标签的意思自己查一下吧,一个都不能少) 3:在pom文件的build中加入以下配置 4:最后在Libraries中添加所需的本地jar包(jar文件夹即可) 如果有不同意见可以留言。。。

Strong_Foo的博客 2434

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

spring boot项目打成jar包,linux部署

spring boot项目打成jar包,linux部署 1.准备spring boot 项目 pom.xml 添加如下配置: <packaging>jar</packaging> <plugin> <groupId>org.springframework.boot</groupId> ...

wy_0830的博客 884

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

Spring Boot Maven项目生成jar包,部署到Linux服务器运行

Spring Boot生成jar ,本篇只针对于 idea 第一部分 生成jar 1.首先进入“Project Structure” ,之后点击 “Artifacts” 2.点击 + 号,选择JAR 3.进入选择 ,最后点击 OK 4.直接 Apply 、 OK 5.完成之后,就可以直接打包了 选择 项目名:jar 下的属性 Build:第一次生成ja...

流浪_猫O_o的博客 7364

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

linux打jar包后在哪儿,springboot打成Jar包后部署至Linux服务器上

下面主要记录一下springboot打包成jar包在Linux服务上部署的步骤:1、通过WinSCP,将相应的Jar文件,复制到Linux指定目录下,如/home/2、打开ssh,进入/home目录下,执行如下命令,进行项目的启动,此方式为后台启动,即使关闭当前窗口,项目还是在运行的,会生成nohup.out日志文件,可以查看其启动日志nohup java -jar XXX.jar3、停止项目,首...

weixin_32694271的博客 2088

springboot项目打jar包部署到linux

springoot项目打包时候,基本就是jar 包和war包,jar包相比起war包,比较方便,不用在原有的代码上加太多东西。 打包: 在配置文件里面加入以下代码 <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactI

m0_60156487的博客 1021

Linux SpringBoot项目、jar包部署,shell脚本

springboot 是默认集成Tomcat容器的,将项目打包成jar包库、使用Java直接启动jar包(非spring boot也可以) 1:首先需要在服务器端安装jdk、maven、本文还安装了git,方便拉取要部署的项目 2:想要SpringBoot项目使用maven打包成jar包需先在项目中的pom添加build插件,代码如下 &lt;build&gt; &lt;p...

zhang_benfu的博客 2301

将SpringBOOT项目 打成 jar 包 并 部署到 Linux服务器

一、打包成 jar包 关于springboot 打成 jar 包和 打 war 包的区别: jar包:直接通过内置tomcat运行,不需要额外安装tomcat。如需修改内置tomcat的配置,只需要在spring boot的配置文件中配置。内置tomcat没有自己的日志输出,全靠jar包应用输出日志。但是比较方便,快速,比较简单。 war包:传统的应用交付方式,需要安装tomcat,然后放...

喜欢历史的码农 3530

SpringBoot以Jar包部署Linux后访问不到jar包外部的资源

由于项目涉及到了大量图片资源,即图片上传功能,总不能上传图片至Jar包内部吧,所以需要在jar包外设置资源路径来保存图片及其他资源。 对于其他框架我们一般使用war包部署到tomcat下,很方便就可以设置资源路径。 而SpringBoot项目自身集成tomcat,如果你真的向我一样作????,咱就想使用Jar包部署那就需要进行一些小小的配置。 其实也无非就是添加一个静态资源映射addResourceHandlers,新建一个类继承自WebMvcConfigurer 需要注意的是: Window上

拾贰S 2081

在Linux下部署SpringBoot的jar包

在Linux下部署SpringBoot的jar包 一、将项目打包成jar包 利用mvn:clean package命令打包项目 二、编写启动、停止、重启脚本 start.sh(启动脚本) #nohup 命令 #用途:不挂断地运行命令。 #语法:nohup Command [ Arg … ][ & ] nohup java -jar XX.jar & stop.sh(关闭脚本) PID=`ps -ef | grep XX.jar | grep -v grep | awk '{print $

qq_38650808的博客 522

SpringBoot maven项目打jar包并部署到 linux/windows服务

转自http://www.kongzid.com/archives/java3 ,使用Spring自带的DriverManagerDataSource <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd" <!—设定dataSourceà <!—使用

孔子说 4074

linux下jar包部署命令,详解springboot中的jar包部署步骤

eclipse中:1.单击整个项目 run as - maven clean - maven install2.找到项目所在的路径 找到所有的jar包3.把jar包放到linux对应的文件夹linux中部署项目:1.查看jar是否在运行中 ps -ef | grep SpliderWeb-0.0.1-SNAPSHOT.jar2.有运行的jar包 杀死对应的进程 kill 进程号3.无运行的jar包...

weixin_39874881的博客 317

springboot打jar包部署Linux

下面主要记录一下springboot打包成jar包在Linux服务上部署的步骤: 1、将打成的Jar文件,复制到Linux指定目录下,如/home/ 2、打开ssh,进入/home目录下,执行如下命令,进行项目的启动,此方式为后台启动,即使关闭当前窗口,项目还是在运行的,会生成nohup.out日志文件,可以查看其启动日志   nohup java -jar XXX.jar 3、停止项目,...

xiaomojun的专栏 984

idea将springboot项目打jar包发布到linux中,部署并运行

我用的是jdk1.8 mysql8 一、准备工作 1、linux安装jdk 2、linux安装mysql 3、linux数据库的创建 备份本地数据库: 右键数据库–>转储SQL文件–>结构和数据 在连接linux数据库中运行刚刚保存的文件 4、更改连接mysql的代码 这里要注意linux的主机和登录用户、密码 二、项目打包上传 1、右击maven,找到项目下的Lifecycle下的package,双击package 打包成功 找到项目目录下的target,能找到我们刚刚打包的jar包

qq_46344415的博客 613
上一篇: IDEA中xml文件中的sql语句格式化配置及后续问题
下一篇: 7zip压缩时过滤文件夹
My_Java_Life
博客等级 码龄11年 39粉丝 61原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值