以下是在服务器上部署Spring Boot项目jar包的步骤:
-
打包项目:
- 使用IDEA或者命令行工具(如Maven或Gradle)将Spring Boot项目打包为一个可执行的jar文件。
- 如果使用Maven,可以在项目的根目录下运行以下命令来打包项目:
这个命令会清除之前的构建产物,然后打包项目,并跳过测试。mvn clean package -DskipTests
-
将jar文件上传到服务器:
- 使用FTP、SCP、SFTP等工具将生成的jar文件上传到服务器的指定目录,例如
/opt/myapp
。
- 使用FTP、SCP、SFTP等工具将生成的jar文件上传到服务器的指定目录,例如
-
创建启动脚本(可选):
- 可以创建一个shell脚本来启动和停止你的应用。以下是一个简单的示例:
将这个脚本保存为#!/bin/bashAPP_NAME=myapp JAR_FILE=/opt/myapp/myapp.jar PID_FILE=/var/run/$APP_NAME.pid LOG_FILE=/var/log/$APP_NAME.logstart() {if [ -f $PID_FILE ]; thenecho "Application is already running..."exit 1fijava -jar $JAR_FILE > $LOG_FILE 2>&1 &echo $! > $PID_FILEecho "Application started." }stop() {if [ ! -f $PID_FILE ]; thenecho "Application is not running..."exit 1fiPID=$(cat $PID_FILE)kill $PIDrm $PID_FILEecho "Application stopped." }case "$1" instart)start;;stop)stop;;restart)stopstart;;*)echo "Usage: $0 {start|stop|restart}"exit 1;; esac
myapp.sh
,并将其放在一个方便的位置,如/etc/init.d/
。
- 可以创建一个shell脚本来启动和停止你的应用。以下是一个简单的示例:
-
赋予脚本执行权限:
- 在服务器上,使用
chmod
命令给启动脚本添加执行权限:chmod +x /etc/init.d/myapp.sh
- 在服务器上,使用
-
配置系统服务(可选):
- 如果你希望在系统启动时自动启动你的应用,或者使用
service
命令来管理应用,可以将启动脚本添加为系统服务。以下是在Ubuntu系统中使用Systemd的示例:- 创建一个systemd服务单元文件
/etc/systemd/system/myapp.service
,内容如下:[Unit] Description=My Spring Boot Application After=network.target[Service] ExecStart=/etc/init.d/myapp.sh start ExecStop=/etc/init.d/myapp.sh stop User=<your_user> Restart=always[Install] WantedBy=multi-user.target
- 更新systemd服务列表:
systemctl daemon-reload
- 启动服务并设置开机启动:
systemctl start myapp systemctl enable myapp
- 创建一个systemd服务单元文件
- 如果你希望在系统启动时自动启动你的应用,或者使用
-
启动应用:
- 使用以下命令启动你的应用:
/etc/init.d/myapp.sh start
- 或者,如果已经配置了系统服务,可以使用
systemctl
命令:systemctl start myapp
- 使用以下命令启动你的应用:
-
验证应用是否运行:
- 可以通过访问应用的URL或者查看日志文件
/var/log/myapp.log
来确认应用是否成功启动。
- 可以通过访问应用的URL或者查看日志文件
以上就是将Spring Boot项目jar包部署到服务器上的基本步骤。根据你的具体需求和服务器环境,可能需要进行一些调整。