发布于2026-07-27 阅读(0)
扫一扫,手机访问
在Ubuntu上部署Ja va项目,其实有一套成熟的标准流程。从环境准备到编译打包,再到服务化运行和反向袋里,每一步都有值得注意的细节。下面我们就顺着这条路径,把整个流程拆解清楚。
首先更新系统软件包列表,确保后续安装的组件都是最新版本:

sudo apt update && sudo apt upgrade -y
接着安装常用工具,比如vim、wget、curl,方便后续操作:
sudo apt install vim wget curl -y
选择OpenJDK 11(也可以根据项目要求选8或17),安装命令非常直接:
sudo apt install openjdk-11-jdk -y
安装完成后,验证一下JDK是否成功:
ja va -version # 检查运行时环境
ja vac -version # 检查编译工具
如果能看到版本信息,说明环境已就绪。
虽然不配也能用,但配置JA VA_HOME可以避免每次输入完整路径的麻烦。编辑~/.bashrc(用户级)或/etc/profile(系统级):
vim ~/.bashrc
在文件末尾添加以下内容(JDK路径可能因版本而异,可通过update-alternatives --config ja va确认):
export JA VA_HOME=/usr/lib/jvm/ja va-11-openjdk-amd64
export PATH=$JA VA_HOME/bin:$PATH
保存后执行:
source ~/.bashrc
环境变量即刻生效。
根据项目使用的构建工具,选择对应的命令:
pom.xml),执行清理并打包:mvn clean package生成的JAR/WAR文件默认在target/目录下,比如your-project-1.0.0.jar。build.gradle的目录,运行:gradle build产物在build/libs/目录下。ja vac编译,再打包为JAR:ja vac src/*.ja va -d build/classes # 编译到build/classes目录
jar cvf app.jar -C build/classes . # 打包为app.jar打包好的JAR/WAR文件需要上传到服务器,推荐使用scp命令:
scp target/your-project.jar your_username@your_server_ip:/path/to/deploy
输入密码后,文件就会被传输到目标目录,比如/opt/ja va-apps。
启动方式有三种,适用场景各不相同:
ja va -jar /path/to/deploy/your-project.jarnohup让应用在后台持续运行,日志写入文件:nohup ja va -jar /path/to/deploy/your-project.jar > /path/to/deploy/app.log 2>&1 &sudo vim /etc/systemd/system/your-ja va-app.service写入以下内容(根据实际路径和用户调整):[Unit]
Description=Your Ja va Application
After=syslog.target network.target
[Service]
User=ubuntu # 运行服务的用户,建议用非root
WorkingDirectory=/path/to/deploy
ExecStart=/usr/bin/ja va -jar /path/to/deploy/your-project.jar
Restart=always # 进程崩溃后自动重启
RestartSec=3 # 重启间隔3秒
Environment="JA VA_OPTS=-Xms512m -Xmx1024m" # JVM内存配置
[Install]
WantedBy=multi-user.target然后使服务生效并启动:sudo systemctl daemon-reload
sudo systemctl start your-ja va-app
sudo systemctl enable your-ja va-app # 开机自启查看服务状态:sudo systemctl status your-ja va-app如果应用需要被外部访问,记得开放对应端口(比如8080):
sudo ufw allow 8080/tcp # 允许TCP协议的8080端口
sudo ufw enable # 启用防火墙(若未启用)
验证端口是否开放:
sudo ufw status
要用域名访问或启用HTTPS,Nginx是常见的选择。安装Nginx:
sudo apt install nginx -y
编辑默认站点配置:
sudo vim /etc/nginx/sites-a vailable/default
添加以下内容(将请求转发到本地的8080端口):
server {
listen 80;
server_name your-domain.com; # 替换为你的域名或公网IP
location / {
proxy_pass http://localhost:8080; # 转发到Ja va应用端口
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
重启Nginx使配置生效:
sudo systemctl restart nginx
nohup或systemd,可以通过以下命令实时查看:tail -f /path/to/deploy/app.log # nohup日志路径
journalctl -u your-ja va-app -f # systemd服务日志systemctl status查看服务状态,或通过JMX、Prometheus等工具监控JVM性能。以上步骤覆盖了Ja va项目在Ubuntu上的完整编译部署流程。根据项目类型(如Spring Boot、Ja va Web)和实际需求,可以灵活调整数据库连接、环境变量等细节。关键是把每一步想清楚,部署起来就不会手忙脚乱。
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
7
8