1. 准备Java运行环境
在CentOS上运行Java项目前,需先安装JDK并配置环境变量。推荐使用OpenJDK(开源且易管理),通过以下命令安装OpenJDK 8(或11/17等版本):
sudo yum update -y
sudo yum install java-1.8.0-openjdk-devel -y
安装完成后,验证Java是否安装成功:
java -version # 查看Java运行时版本
javac -version # 查看Java编译器版本(若需编译源码)
若需全局使用Java命令,需配置环境变量。编辑/etc/profile文件,添加以下内容(根据实际安装路径调整):
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk
export PATH=$JAVA_HOME/bin:$PATH
保存后执行source /etc/profile使配置生效。
2. 上传Java项目到服务器
使用SCP、SFTP或Git等工具将本地Java项目上传至CentOS服务器。例如,使用SCP上传JAR文件:
scp /local/path/to/your-project.jar user@server-ip:/remote/path/to/deploy
若项目为源码(含pom.xml或build.gradle),需上传整个项目目录。
3. 编译Java项目(若需)
- Maven项目:进入项目根目录,执行
mvn clean package,生成的JAR文件位于target目录(如your-project-1.0.jar)。 - Gradle项目:执行
gradle build,生成的JAR文件位于build/libs目录。 - 纯源码项目:若项目为
.java文件,需先编译为.class文件(javac src/com/example/Main.java -d bin),再运行。
4. 运行Java应用
- 普通JAR应用:进入JAR文件所在目录,使用
java -jar your-project.jar运行。若需后台持续运行(避免终端关闭后停止),添加nohup命令:日志会输出到nohup java -jar your-project.jar > app.log 2>&1 &app.log文件中。 - Web应用(WAR文件):需将WAR文件部署到Servlet容器(如Tomcat)。首先下载并解压Tomcat(如版本9.0.x):
将WAR文件复制到Tomcat的wget https://downloads.apache.org/tomcat/tomcat-9/v9.0.53/bin/apache-tomcat-9.0.53.tar.gz tar -xzvf apache-tomcat-9.0.53.tar.gz -C /optwebapps目录:启动Tomcat:sudo cp your-project.war /opt/apache-tomcat-9.0.53/webapps/
访问/opt/apache-tomcat-9.0.53/bin/startup.shhttp://server-ip:8080/your-project(your-project为WAR文件名)验证部署。
5. 配置防火墙(若需对外访问)
若应用需对外提供服务(如Web应用),需开放对应端口(默认8080)。执行以下命令:
sudo firewall-cmd --permanent --add-port=8080/tcp # 开放8080端口
sudo firewall-cmd --reload # 重新加载防火墙规则
验证端口是否开放:sudo firewall-cmd --list-ports。
6. 设置开机自启动(可选)
若需Java应用随服务器重启自动运行,可使用systemd创建服务。创建服务文件:
sudo nano /etc/systemd/system/my-java-app.service
添加以下内容(根据实际路径调整):
[Unit]
Description=My Java Application
After=syslog.target network.target
[Service]
User=root
ExecStart=/usr/bin/java -jar /remote/path/to/your-project.jar
SuccessExitStatus=143
Restart=on-failure
RestartSec=10
[Install]
WantedBy=multi-user.target
保存后执行以下命令启用并启动服务:
sudo systemctl daemon-reload
sudo systemctl start my-java-app
sudo systemctl enable my-java-app
验证服务状态:sudo systemctl status my-java-app。
以上就是关于“Java项目在CentOS如何运行”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm