1. 準備Java運行環境
在CentOS上部署Java項目前,需先安裝JDK并配置環境變量。推薦使用yum
安裝OpenJDK(自動處理依賴),例如安裝OpenJDK 11:
sudo yum update -y
sudo yum install java-11-openjdk-devel -y
安裝完成后,驗證Java版本:
java -version
若需手動配置環境變量(如使用特定JDK版本),編輯/etc/profile
文件,添加以下內容(替換為實際路徑):
export JAVA_HOME=/usr/lib/jvm/java-11-openjdk
export PATH=$JAVA_HOME/bin:$PATH
執行source /etc/profile
使配置生效。
2. 上傳項目文件至服務器
使用scp
命令將本地項目文件(如Maven/Gradle項目目錄或WAR包)上傳至服務器。例如,將本地的myproject
目錄上傳至服務器的/opt
目錄:
scp -r /local/path/to/myproject root@your_server_ip:/opt
若項目為Maven/Gradle工程,需先在本地編譯打包(如mvn clean package
),生成WAR文件后再上傳。
3. 編譯Java項目(若需)
若項目為源碼形式(如.java
文件),需通過javac
命令編譯。例如,進入項目目錄,編譯所有.java
文件并將輸出存至out
目錄:
cd /opt/myproject
javac -d out src/*.java
若項目使用Maven/Gradle構建,可直接執行mvn clean package
或gradle build
生成WAR/JAR文件,無需手動編譯。
4. 部署至Web應用服務器(以Tomcat為例)
/opt
目錄:wget https://downloads.apache.org/tomcat/tomcat-9/v9.0.56/bin/apache-tomcat-9.0.56.tar.gz
tar -zxvf apache-tomcat-9.0.56.tar.gz -C /opt
myproject.war
)復制至Tomcat的webapps
目錄,Tomcat會自動解壓部署:sudo cp /opt/myproject/target/myproject.war /opt/apache-tomcat-9.0.56/webapps/
bin
目錄,執行startup.sh
啟動服務:/opt/apache-tomcat-9.0.56/bin/startup.sh
驗證Tomcat是否啟動成功:訪問http://your_server_ip:8080
,若看到Tomcat歡迎頁面則表示成功。5. 配置防火墻(可選但推薦)
若服務器啟用了防火墻(如firewalld
),需開放Tomcat監聽的端口(默認8080):
sudo firewall-cmd --permanent --add-port=8080/tcp
sudo firewall-cmd --reload
若使用iptables
,可執行:
sudo iptables -A INPUT -p tcp --dport 8080 -j ACCEPT
sudo service iptables save
6. 測試應用訪問
在瀏覽器中輸入http://your_server_ip:8080/your-app-context-path
(your-app-context-path
為WAR文件名,不含.war
擴展名),若能正常訪問應用頁面,則表示部署成功。
7. 可選:自動化部署(提升效率)
webapps
目錄),通過docker-compose
管理容器,實現一鍵部署和環境一致性。