当前位置: 首页 > news >正文

Linux设置jar包开机启动

操作系统环境:CentOS 7

【需要 root 权限,使用 root 用户进行操作 或 普通用户使用 sudo 进行操作】

一、系统服务的方式

原理:利用系统服务管理应用程序的生命周期, systemctl 为系统服务管理工具

systemctl start applicationname,启动应用服务

systemctl restart applicationname,重启应用服务

systemctl stop applicationname,停止应用服务

systemctl status applicationname,查看应用服务

systemctl enable applicationname,开机启动应用服务

systemctl disable applicationname,取消开机启动应用服务

1、新建服务

为需要开机启动的 jar 包,新建服务 lims-server.service,服务描述为“lims-server.jar包服务程序”

在 /usr/lib/systemd/system 目录下,新建 lims-server.service 文件,配置内容

vim /usr/lib/systemd/system/lims-server.service

配置内容如下:

[Unit]
Description=lims-server.jar包服务程序
After=syslog.target network.target remote-fs.target nss-lookup.target[Service]
User=root
Group=rootExecStart=/export/server/jdk/bin/java -jar /export/server/jar/lims-server-1.0-SNAPSHOT.jar
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID[Install]
WantedBy=multi-user.target

2、重新加载

systemctl daemon-reload

3、启动 jar 包服务

先查看 jar 包服务状态(lims-server.service)

systemctl status lims-server.service

启动  jar 包服务(lims-server.service)

systemctl start lims-server.service

再查看 jar 包服务状态(lims-server.service) 

systemctl status lims-server.service

4、设置 jar 包服务开机启动 

systemctl enable lims-server.service

5、重启计算机

reboot

6、验证

查看 jar 包服务状态(lims-server.service),查看 jar 进程

systemctl status lims-server.service
ps -ef | grep jar

重启 jar 包服务(lims-server.service),查看 jar 包服务状态(lims-server.service),查看 jar 进程

systemctl restart lims-server.service;systemctl status lims-server.service;ps -ef | grep jar

停止 jar 包服务(lims-server.service),查看 jar 包服务状态(lims-server.service),查看 jar 进程

systemctl stop lims-server.service;
systemctl status lims-server.service;
ps -ef | grep jar

-------------------------------------------------------------------------------------------------------------------------------

-------------------------------------------------------------------------------------------------------------------------------

普通用户使用 sudo 进行操作的记录

二、sh 脚本的方式

1、新建 sh 脚本

在 /etc/rc.d/init.d 目录下,新建 auto-run-jar.sh 脚本文件,编写脚本内容实现开机启动:在后台不挂断运行 /export/server/jar/tlias-0.0.1-SNAPSHOT.jar 包程序,指定 8081 端口,以文件追加的方式,将【标准输出】重定向指定到 /export/server/jar/log/tlias.log 文件中,将【标准错误】重定向到【标准输出】,即【标准错误】也重定向到 /export/server/jar/log/tlias.log 文件中。

vim /etc/rc.d/init.d/auto-run-jar.sh

编写脚本内容如下: 

#!/bin/bashnohup /export/server/jdk/bin/java -jar /export/server/jar/tlias-0.0.1-SNAPSHOT.jar --server.port=8081 >> /export/server/jar/log/tlias.log 2>&1 &

2、授予 sh 脚本执行权限

chmod +x /etc/rc.d/init.d/auto-run-jar.sh

3、设置 sh 脚本开机启动

编辑 /etc/rc.d/rc.local 文件,增加该脚本路径 /etc/rc.d/init.d/auto-run-jar.sh

vim /etc/rc.d/rc.local

4、授予rc.local文件执行权限

chmod 777 /etc/rc.d/rc.local

5、重启计算机

reboot

6、验证

ps -ef | grep jar

相关文章:

Linux设置jar包开机启动

操作系统环境:CentOS 7 【需要 root 权限,使用 root 用户进行操作 或 普通用户使用 sudo 进行操作】 一、系统服务的方式 原理:利用系统服务管理应用程序的生命周期, systemctl 为系统服务管理工具 systemctl start applicati…...

计算机视觉和机器人技术中的下一个标记预测与视频扩散相结合

一种新方法可以训练神经网络对损坏的数据进行分类,同时预测下一步操作。 它可以为机器人制定灵活的计划,生成高质量的视频,并帮助人工智能代理导航数字环境。 Diffusion Forcing 方法可以对嘈杂的数据进行分类,并可靠地预测任务的…...

C语言之简单的获取命令行参数和环境变量

C语言之简单的获取命令行参数和环境变量 本人的开发环境为WIN10操作系统用VMWARE虚拟的UBUNTU LINUX 18.04LTS!!! 所有代码的编辑、编译、运行都在虚拟机上操作,初学的朋友要注意这一点!!! 详细…...

STL之vecor的使用(超详解)

目录 1. C/C中的数组 1.1. C语言中的数组 1.2. C中的数组 2. vector的接口 2.1. vector的迭代器 2.2. vector的初始化与销毁 2.3. vector的容量操作 2.4. vector的访问操作 2.5. vector的修改操作 💓 博客主页:C-SDN花园GGbond ⏩ 文章专栏…...

SystemVerilog学习笔记(一):数据类型

在systemverilog中,主要包含以下数据类型: 4值类型2值类型数组字符串结构体和联合体枚举自定义类型 无符号数:无符号数的符号不使用任何标志,即无符号数只能存储正数。无符号二进制数的范围从 0 到 ((2^n) - 1),n 表…...

Linux软件包管理与Vim编辑器使用指南

目录 一、Linux软件包管理器yum 1.什么是软件包? 2.什么是软件包管理器? 3.查看软件包 4.安装软件 ​编辑 5.卸载软件 Linux开发工具: 二、Linux编辑器---vim 1.vim的基本概念 (1) 正常/普通模式(Normal mode&#xff0…...

每日一练 | 包过滤防火墙的工作原理

01 真题题目 包过滤防火墙对哪一层的数据报文进行检查? A. 应用层 B. 物理层 C. 网络层 D. 链路层 02 真题答案 C 03 答案解析 包过滤防火墙是一种基本的安全设备,它通过检查进出网络的数据包来决定是否允许该数据包通过。 这种类型的防火墙主要关注…...

AR眼镜方案_AR智能眼镜阵列/衍射光波导显示方案

在当今AR智能眼镜的发展中,显示和光学组件成为了技术攻坚的主要领域。由于这些组件的高制造难度和成本,其光学显示模块在整个设备的成本中约占40%。 采用光波导技术的AR眼镜显示方案,核心结构通常由光机、波导和耦合器组成。光机内的微型显示…...

SpringBoot(十九)创建多模块Springboot项目(完整版)

之前我有记录过一次SpringBoot多模块项目的搭建,但是那一次只是做了一个小小的测试。只是把各模块联通之后就结束了。 最近要增加业务开发,要将目前的单模块项目改成多模块项目,我就参照了一下我上次搭建的流程,发现总是有报错。上次搭建的比较顺利,很多细枝末节也没有仔细…...

Navicat 17 功能简介 | 单元格编辑器

Navicat 17 功能简介 | 单元格编辑器 本期,我们一起了解 Navicat 17 出色的数据操作功能的单元格编辑器。单元格编辑器支持文本、十六进制、图像和网页四种格式的数据编辑,位于底部的编辑器窗格,为你编辑更大容量的数据信息提供足够的显示和操…...

MySQL【四】

插入数据 向数据表中插入一行数据 INSERT|REPLACE INTO 表名[(字段列表)] VALUES(值列表); ########## 在s表中插入一条记录:学号为s011,姓名为李思,性别为默认值,计算机专业 ########## insert into s(sno,sname,dept)values(s011,李思,计…...

简单叙述 Spring Boot 启动过程

文章目录 1. 准备阶段:应用启动的入口2. 创建 SpringApplication 对象:开始启动工作3. 配置环境(Environment):识别开发环境与生产环境4. 启动监听器和初始化器:感知启动的关键事件5. 创建 ApplicationCont…...

微信小程序自定义tabbar;禁用某个tab;修改某个tab的样式

微信小程序自定义tabbar;禁用某个tab;修改某个tab的样式 原本使用本身的tabBar就已经很舒服了,很合适了的,但是总有一些脑洞大开的产品和客户,给你搞点多样式,没办法牛马就得去做咯,现在就给大…...

力扣113:路径总和II

给你二叉树的根节点 root 和一个整数目标和 targetSum ,找出所有 从根节点到叶子节点 路径总和等于给定目标和的路径。 叶子节点 是指没有子节点的节点。 示例 1: 输入:root [5,4,8,11,null,13,4,7,2,null,null,5,1], targetSum 22 输出&a…...

JavaScript字符串常用方法

在JavaScript中,字符串是用来表示文本数据的基本数据类型。字符串可以用单引号()、双引号(")、或反引号()包裹。JavaScript中的字符串是不可变的,也就是说,字符串的值一旦创建就无法更改,但可以创建新字符串来替换原有字符串…...

xtu oj 加一

样例输入# 2 4 1 2 3 4 4 3 2 4 1样例输出# 3 5 解题思路:最小操作次数一定是把所有数变成数组中最大值max。 1、找最大值,一开始我把max初始值设为0,如果a[i]>max,maxa[i],WA了。又看了一遍题目,发现所有整数的绝对值小于…...

QTcpSocket 服务端和客户端

前提&#xff1a; pro文件中添加 QT network 服务端主要采用信号槽机制&#xff0c;代码如如下 核心代码头文件#ifndef TCPSERVER_H #define TCPSERVER_H#include <QObject>#include <QTcpServer> #include <QTcpSocket> #include <QDebug> #inclu…...

Isaac Sim+SKRL机器人并行强化学习

目录 Isaac Sim介绍 OmniIssacGymEnvs安装 SKRL安装与测试 基于UR5的机械臂Reach强化学习测评 机器人控制 OMNI GYM环境编写 SKRL运行文件 训练结果与速度对比 结果分析 运行体验与建议 Isaac Sim介绍 Isaac Sim是英伟达出的一款机器人仿真平台&#xff0c;适用于做机…...

项目中用户数据获取遇到bug

项目跟练的时候 Uncaught (in promise) TypeError: Cannot read properties of undefined (reading ‘code’) at Proxy.userInfo (user.ts:57:17) 因此我想要用result接受信息的时候会出错&#xff0c;报错显示为result.code没有该值 导致我无法获取到相应的数据 解决如下 给…...

SpringSecurity+jwt+captcha登录认证授权总结

SpringSecurityjwtcaptcha登录认证授权总结 版本信息&#xff1a; springboot 3.2.0、springSecurity 6.2.0、mybatis-plus 3.5.5 认证授权思路和流程&#xff1a; 未携带token&#xff0c;访问登录接口&#xff1a; 1、用户登录携带账号密码 2、请求到达自定义Filter&am…...

KF32A150开发第一步:手把手教你用KF32 IDE导入、编译和烧录第一个工程

KF32A150开发实战&#xff1a;从零完成工程导入到烧录的全流程指南 第一次接触芯旺微KF32系列MCU时&#xff0c;面对陌生的开发环境和工具链&#xff0c;很多开发者都会感到无从下手。本文将带你一步步完成KF32A150开发板的第一个程序烧录&#xff0c;涵盖工程导入、编译配置到…...

OpenClaw故障排查:Qwen3-VL:30B飞书连接常见问题解决

OpenClaw故障排查&#xff1a;Qwen3-VL:30B飞书连接常见问题解决 1. 问题背景与排查准备 上周在星图平台部署Qwen3-VL:30B时&#xff0c;我遇到了OpenClaw与飞书连接的一系列"诡异"问题。从WebSocket莫名断开到模型响应超时&#xff0c;整个过程就像在解一个技术版…...

逻辑回归毕设效率优化实战:从特征工程到推理加速的全流程提速方案

最近在帮学弟学妹们看逻辑回归相关的毕业设计&#xff0c;发现一个普遍问题&#xff1a;大家把重点都放在了模型原理上&#xff0c;但代码一跑起来&#xff0c;训练慢、预测卡&#xff0c;整个流程效率低下&#xff0c;非常影响实验进度和最终演示效果。其实&#xff0c;逻辑回…...

I2C基础复习

一、I2C 基础详解 I2C&#xff08;Inter-Integrated Circuit&#xff0c;集成电路总线&#xff09;是一种半双工、同步、多主多从的串行通信协议&#xff0c;由 Philips&#xff08;现 NXP&#xff09;于 1982 年发明&#xff0c;广泛用于 MCU 与低速外设&#xff08;如传感器、…...

ESP32智能LED驱动库:RMT与SPI硬件加速原理

1. 项目概述 SmartLeds 是一个专为 ESP32 平台设计的轻量级、高性能智能 LED 驱动库&#xff0c;其核心目标是提供一种 简单、直观且硬件加速 的方式&#xff0c;统一控制多种主流可寻址 LED&#xff08;Addressable LEDs&#xff09;。该库并非基于通用 GPIO 模拟时序的软件…...

企业级微信自动化框架:WeChatFerry的技术实现与商业价值分析

企业级微信自动化框架&#xff1a;WeChatFerry的技术实现与商业价值分析 【免费下载链接】WeChatFerry 微信逆向&#xff0c;微信机器人&#xff0c;可接入 ChatGPT、ChatGLM、讯飞星火、Tigerbot等大模型。Hook WeChat. 项目地址: https://gitcode.com/GitHub_Trending/we/W…...

【内存心法】别用玄学猜栈大小了!撕碎 RTOS 堆栈溢出的遮羞布,用 ARM MPU 构筑硬件级“死亡红区”与绝对沙箱

摘要&#xff1a;在错综复杂的多任务 RTOS 环境中&#xff0c;一个微小的局部数组越界&#xff0c;就能像癌细胞一样悄无声息地摧毁整个系统的内存空间。无数开发者迷信 FreeRTOS 的 vApplicationStackOverflowHook&#xff0c;却不知道它在真正的“跳跃式内存踩踏”面前形同虚…...

小程序毕业设计-基于微信小程序的时间管理系统的设计与实现-时间管理小程序-番茄时钟小程序

小程序毕业设计-基于微信小程序的时间管理系统的设计与实现 https://www.bilibili.com/video/BV1ts3FzxEci/?spm_id_from333.1387.search.video_card.click&vd_source832d614817260f8f26d9431e5d8f726b 基于微信小程序的时间管理系统的设计与实现 技术说明: 用户前端:微信…...

为什么选择Nuitka?Python编译加速的终极解决方案 [特殊字符]

为什么选择Nuitka&#xff1f;Python编译加速的终极解决方案 &#x1f680; 【免费下载链接】Nuitka Nuitka is a Python compiler written in Python. Its fully compatible with Python 2.6, 2.7, 3.4, 3.5, 3.6, 3.7, 3.8, 3.9, 3.10, and 3.11. You feed it your Python ap…...

RVC开源镜像实测:CSDN GPU平台3分钟完成端到端部署

RVC开源镜像实测&#xff1a;CSDN GPU平台3分钟完成端到端部署 想用自己的声音唱出周杰伦的歌&#xff0c;或者让AI模仿你喜欢的歌手声线吗&#xff1f;过去这需要复杂的本地环境搭建、漫长的模型训练&#xff0c;对新手来说门槛极高。但现在&#xff0c;借助CSDN GPU平台上的…...