在 Ubuntu 上启动 Java 服务,常见方式有以下几种,按使用频率从低到高说明:
java -jar your-app.jar
nohup java -jar your-app.jar > app.log 2>&1 &
查看:
tail -f app.log
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
sudo systemctl daemon-reload
sudo systemctl start myjava
sudo systemctl enable myjava
systemctl status myjava
journalctl -u myjava -f
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 -version
sudo apt install openjdk-17-jdk
netstat -tunlp | grep 8080
sudo chown -R ubuntu:ubuntu /opt/app
| 场景 | 推荐方式 |
|---|---|
| 本地测试 | java -jar |
| 服务器生产 | systemd |
| 老项目 | 启动脚本 |
如果你愿意,可以告诉我:
我可以帮你写一份完整可用的 service 文件。