温馨提示×

ubuntu java服务怎样启动

小樊
50
2026-09-22 09:33:30
栏目: 编程语言

在 Ubuntu 上启动 Java 服务,常见方式有以下几种,按使用频率从低到高说明:


一、最简单:直接运行 jar / class

1️⃣ 运行 jar 包

java -jar your-app.jar

2️⃣ 后台运行(不推荐生产)

nohup java -jar your-app.jar > app.log 2>&1 &

查看:

tail -f app.log

二、使用 systemd(✅ 推荐生产环境)

1️⃣ 创建 service 文件

sudo vim /etc/systemd/system/myjava.service

示例:

[Unit]
Description=My Java Service
After=network.target

[Service]
User=ubuntu
WorkingDirectory=/opt/myapp
ExecStart=/usr/bin/java -jar /opt/myapp/app.jar
SuccessExitStatus=143
Restart=always

[Install]
WantedBy=multi-user.target

⚠️ 确认 java 路径:

which java

2️⃣ 重载并启动

sudo systemctl daemon-reload
sudo systemctl start myjava
sudo systemctl enable myjava

3️⃣ 查看状态 / 日志

systemctl status myjava
journalctl -u myjava -f

三、Spring Boot 项目(常见)

Spring Boot 本身就是 jar:

java -jar springboot-app.jar

或使用 profile:

java -jar app.jar --spring.profiles.active=prod

四、使用脚本启动(旧项目常见)

#!/bin/bash
java -Xms512m -Xmx1024m -jar /opt/app/app.jar

赋予权限:

chmod +x start.sh
./start.sh

五、常见问题排查

Java 未安装

java -version
sudo apt install openjdk-17-jdk

端口被占用

netstat -tunlp | grep 8080

权限不足

sudo chown -R ubuntu:ubuntu /opt/app

✅ 总结推荐

场景 推荐方式
本地测试 java -jar
服务器生产 systemd
老项目 启动脚本

如果你愿意,可以告诉我:

  • Java 版本
  • 是否是 Spring Boot
  • 是否要开机自启

我可以帮你写一份完整可用的 service 文件。

0 踩