环境要求检查
cat /etc/os-release
)free -h
和 df -h
)安装必要软件
JDK安装:
# 对于基于Debian的系统
sudo apt update
sudo apt install openjdk-11-jdk
# 对于基于RHEL的系统
sudo yum install java-11-openjdk-devel
bash
java -version
# 后台运行并输出日志到指定文件
nohup java -jar your-application.jar > app.log 2>&1 &
# 查看进程
ps -ef | grep java
# 停止应用
kill [PID]
创建服务文件 /etc/systemd/system/yourapp.service
:
[Unit]
Description=Your Java Application
After=syslog.target network.target
[Service]
User=appuser
WorkingDirectory=/path/to/your/app
ExecStart=/usr/bin/java -jar /path/to/your/app/your-application.jar
SuccessExitStatus=143
Restart=always
RestartSec=10
[Install]
WantedBy=multi-user.target
启用并启动服务:
sudo systemctl daemon-reload
sudo systemctl enable yourapp
sudo systemctl start yourapp
# 查看状态
sudo systemctl status yourapp
创建Dockerfile:
FROM openjdk:11-jre-slim
WORKDIR /app
COPY target/your-application.jar /app
EXPOSE 8080
ENTRYPOINT ["java", "-jar", "your-application.jar"]
构建并运行:
docker build -t your-app .
docker run -d -p 8080:8080 --name your-app-container your-app
JVM参数调优
java -Xms512m -Xmx1024m -XX:+UseG1GC -jar your-application.jar
环境变量配置
-D
参数传递:
bash
java -Dspring.profiles.active=prod -jar your-application.jar
日志管理
性能监控
jstat
, jmap
, jstack
top
, htop
, vmstat
健康检查
端口冲突
netstat -tulnp | grep :8080
内存不足
权限问题
chown -R appuser:appgroup /path/to/your/app
依赖缺失
java.lang.NoClassDefFoundError
错误通过以上步骤,您可以在Linux环境中成功部署和运行Java应用程序。根据应用的具体需求,可能需要调整某些配置参数。