Ubuntu中SpringBoot项目Jar包开机启动

本文介绍如何在Linux Ubuntu环境中实现Jar包的开机自动启动。包括Jar包上传、JDK安装及配置、创建启动脚本并赋予执行权限,以及如何设置脚本随系统启动而运行。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Linux_Ubuntu中,Jar包开机启动

1. 上传jar包,安装Jdk,获取Jdk安装路径

1-1. 将Jar包上传至Ubuntu服务器,可使用工具XShell、FileZilla等

如:上传后的路径为:/mydata/springboot/test.jar

1-2 安装Jdk – Ubuntu安装Jdk1.8

# 安装后的Jdk路径为:  /usr/lib/jvm/java-8-openjdk-amd64
sudo apt-get update
sudo apt-get install openjdk-8-jdk

# 如果当前机器只安装了一个Jdk,可以不用配置环境变量
# 	添加环境变量 
sudo vim ~/.bashrc
# 	在尾部加入
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${PATH}:${JAVA_HOME}/bin
# 重启 
reboot

1-3 获取Jdk安装路径: /usr/lib/jvm/java-8-openjdk-amd64

# 直接find查找
find / -name 'java'
# 输出如下内容: jdk路径即为:  /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.151-5.b12.el7_4.x86_64/jre/bin/java
/etc/pki/ca-trust/extracted/java
/etc/pki/java
/etc/java
/etc/alternatives/java
/var/lib/alternatives/java
/usr/bin/java
/usr/lib/java
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.151-5.b12.el7_4.x86_64/jre/bin/java
/usr/share/java

或者

# 1. 先获取java的执行路径
which java  # 返回: /usr/bin/java
# 2. 使用ls -lrt指令逐步获取
ls -lrt /usr/bin/java 			# 返回: /etc/alternatives/java
ls -lrt /etc/alternatives/java  # 返回: /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java 
# 3. 切换至Jdk的根目录: /usr/lib/jvm/java-8-openjdk-amd64
cd /usr/lib/jvm/java-8-openjdk-amd64

2. 设置Jar包开机启动

2-1 创建启动脚本:

# 进入ubuntu的启动目录
cd /etc/init.d
# 创建启动脚本 testServerStart
sudo vim testServerStart
# 内容如下 ,注:  Jdk的路径,更换为你自己的有效路径
#!/bin/bash
### BEGIN INIT INFO
# Provides:xlt
# Required-Start:$local_fs $remote_fs $network $syslog $named
# Required-Stop:$local_fs $remote_fs $network $syslog $named
# Default-Start:2 3 4 5
# Default-Stop:0 1 6
# Short-Description:starts the police web server
# Description:starts police using start-stop-daemon
### END INIT INFO


NAME=/mydata/springboot/test.jar
echo $NAME
ID=`ps -ef | grep "$NAME" | grep -v "$0" | grep -v "grep" | awk '{print $2}'`
echo $ID
echo "-----------------"
for id in $ID
do
  kill -9 $id
  echo "killed $id"
done
echo "----------eureka server have been stoped already------------------"
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
export PATH=${JAVA_HOME}/bin:$PATH
source /etc/profile
nohup java -Xms512m -Xmx2048m -jar $NAME >/mydata/springboot/testStart.log 2>&1 &
echo "---------Server is running... : ps -ef | grep /mydata/springboot/test.jar-----------------"

2-2 给脚本加上启动权限

# sudo chmod 777 /etc/init.d/testServerStart
sudo chmod 755 /etc/init.d/testServerStart

2-3 添加脚本到系统启动脚本

cd /etc/init.d
sudo update-rc.d testServerStart defaults 90 #90代表启动脚本的先后顺序

2-4 如需取消,则卸载启动脚本

cd /etc/init.d
sudo update-rc.d -f testServerStart remove
Spring Boot 提供了一种简单的方式来设置开机启动,这通常是通过将应用程序作为系统服务部署的方式实现的。以下是基本步骤: 1. **添加依赖**:首先,在`application.properties`或`application.yml`文件中添加关于自动配置的依赖,例如启动类需要含`@SpringBootApplication`注解,并可能还需要`spring-boot-starter-jetty`或`spring-boot-starter-tomcat`等用于HTTP服务器支持。 ```properties server.port=8080 spring.boot.admin.enabled=true ``` 2. **创建配置类**:Spring Boot Admin是一个管理工具,可以帮助你在后台监控应用。如果想让应用开机自启,可以引入它并配置相关的配置。 3. **打jar文件**:使用命令`mvn clean package`或`gradle build`将项目jar文件。 4. **运行脚本或服务**:将生成的jar上传到服务器,然后在Linux上可以使用`nohup java -jar your-app.jar &`命令在后台运行,或者创建一个启动脚本如`start.sh`,并在系统启动时运行。 5. **配置开机启动**:在Linux系统中,可以在`/etc/rc.local`、`.bashrc`或`.bash_profile`中添加启动命令,或者使用`systemd`(比如Ubuntu)或`Windows Service`来设置服务的自动启动。 6. **监控服务状态**:Spring Boot Admin会提供一个界面来查看服务的状态,启动、停止和重启操作。 注意:不同的操作系统和服务管理器可能有不同的方法,上述流程仅供参考。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值