亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

將JavaWeb項目部署到云服務器的詳細步驟

 更新時間:2024年12月13日 09:53:57   作者:2的n次方_  
這篇文章主要介紹了將JavaWeb項目部署到云服務器的詳細步驟,文章通過圖文結合的方式給大家講解的非常詳細,對大家的學習或工作有一定的幫助,需要的朋友可以參考下

1. 搭建 Java 部署環(huán)境

接下來以 Ubuntu 來進行演示

1.1. apt 包管理工具

apt 就相當于手機上的應用市場

列出所有軟件包:apt list
這個命令輸出所有包的列表,內容比較多,可以使用 grep 命令過濾輸出:apt list |grep "jdk"

如果需要下載的軟件,軟件包中沒有的話那就需要用其他方式下載了

安裝軟件前需要更新一下軟件包數(shù)據(jù)庫:sudo apt-get update

安裝軟件包

sudo apt install package_name

移除軟件包

sudo apt remove package_name

remove 命令將卸載給定的軟件包,但可能會留下一些配置文件。如果要刪除包含所有配置文件的軟件包,要使用 purge

apt remove 和 apt purge 的區(qū)別

?apt remove 刪除包的二進制文件,它留下了殘留的配置文件。
?apt purge 刪除與包相關的所有內容,包括配置文件。

如果弄亂了程序的配置,希望從系統(tǒng)中完全清除它的痕跡再重新開始,可以使用 apt purge。

1.2. 下載 jdk

sudo apt install openjdk-17-jdk

安裝之后可以使用 java -version 來查看是否安裝成功

關于如何卸載 jdk

檢查安裝的是哪個 OpenJDK

dpkg --list | grep -i jdk

移除 openjdk 包:

apt-get purge openjdk*

卸載 OpenJDK 相關包:

apt-get purge icedtea-* openjdk-*

檢查所有 OpenJDK 包是否都已卸載完畢:

dpkg --list | grep -i jdk

1.3. 下載 mysql

通過下面的命令來下載 mysql

sudo apt install mysql-server

安裝好之后可以通過 mysql --version來查看版本

也可以通過 sudo systemctl status mysql來檢查 mysql 的狀態(tài)

關于卸載 mysql:

  1. 停止 mysql
    sudo systemctl stop mysql
  2. 卸載 mysql
    sudo apt-get remove --purge mysql-*
  3. 刪除 MySQL 配置文件和數(shù)據(jù)
    sudo rm -rf /etc/mysql/var/lib/mysql
  4. 清理殘留文件和目錄
    sudo apt-get autoremove
    sudo apt-get autoclean
  5. 驗證卸載結果
    mysql --version

2. 部署 Web 項目

開發(fā)環(huán)境:開發(fā)人員寫代碼用的機器。

測試環(huán)境:測試人員測試程序使用的機器。
生產(chǎn)環(huán)境 (線上環(huán)境): 最終項目發(fā)布時所使用的機器,對穩(wěn)定性要求很高。

2.1. mysql 安全設置

運行一下命令:

sudo mysql_secure_installation

運行之后的選項都輸入 Y,密碼強度設置為 2

輸入 sudo mysql 進入后設置密碼

ALTERUSER'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '自定義密碼';

設置之后就可以創(chuàng)建數(shù)據(jù)庫和表,保持和開發(fā)時的數(shù)據(jù)一致

2.2. 配置環(huán)境

開發(fā)環(huán)境和生產(chǎn)環(huán)境肯定是不一樣的,所以一些配置也需要修改,比如 mysql 的密碼或者一些日志的配置,就可以針對不同的平臺來進行配置

那么這三個文件哪個可以生效,可以在 application.yml 來配置下面這些內容

spring:
  profiles:
    active: @profile.name@

是通過自定義 Maven 的參數(shù)來實現(xiàn)的

<profiles>
  <profile>
    <id>dev</id>
    <properties>
      <profile.name>dev</profile.name>
    </properties>
    <activation>
      <activeByDefault>true</activeByDefault>
    </activation>
  </profile>
  <profile>
    <id>prod</id>
    <properties>
      <profile.name>prod</profile.name>
    </properties>
  </profile>
</profiles>

這樣就可以通過 Maven 來進行選擇使用哪個配置了

也可以設置默認選擇的是哪個配置文件

<activation>
  <activeByDefault>true</activeByDefault>
</activation>

2.3. 打包項目

上面配置好之后就可以打包了,注意要選擇 prod,然后雙擊 package

如果 Test 代碼中有與環(huán)境配置相關的操作 (比如數(shù)據(jù)庫相關的操作,可能由于密碼等不一致發(fā)生錯誤),打包會失敗,可以選擇跳過測試,因為執(zhí)行 package 時會按照步驟從上往下依次執(zhí)行

2.4. 上傳并運行 jar 包

可以直接把 jar 包拖進 finalshell 中或者使用 rz 命令來進行上傳,上傳之后通過 java -jar 命令來運行 jar 包

如果希望別人也能訪問的話,項目中設置的端口號(例如8080)也需要在云服務器上進行開放

不過使用上面的啟動方式的話,如果 finalshell 關了或者斷開連接,服務就停止了,就需要使用 nohup 命令來啟動:

看日志的話推薦 tail -f 命令來去看,就可以實時查看,后續(xù)新增的日志也是能看到的

3. 常見問題總結

如果說服務不能正常訪問,可能會有以下原因:

服務未啟動:

可以使用 ps -ef|grep java來查看程序是否運行

使用 curl 項目路徑來看是否返回有 html 頁面,如果有返回,那么就說明程序啟動成功了, 可能是端口號未開放

如果沒有啟動成功,需要查看對應的日志,可能是數(shù)據(jù)庫不存在或者數(shù)據(jù)庫密碼不正確,jdk版本 ,mysql 沒有設置密碼等問題

http 端口未開放,如果說云服務器的防火墻打開了,還需要再打開防火墻的端口號

可以使用sudu ufw status命令來查看防火墻是否開啟,下面顯示的是未開啟狀態(tài)

如果說在部署之后又發(fā)生了錯誤,要重新部署,就需要先把對應的進程結束掉,可以先通過netstat -nltp|grep 8080來查看對應的進程,再使用 kill 命令結束進程

以上就是將JavaWeb項目部署到云服務器的詳細步驟的詳細內容,更多關于將JavaWeb部署到云服務器的資料請關注腳本之家其它相關文章!

相關文章

  • 解決SSLContext.getInstance()中參數(shù)設置TLS版本無效的問題

    解決SSLContext.getInstance()中參數(shù)設置TLS版本無效的問題

    這篇文章主要介紹了解決SSLContext.getInstance()中參數(shù)設置TLS版本無效的問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-01-01
  • java并發(fā)之synchronized

    java并發(fā)之synchronized

    這篇文章主要介紹了java并發(fā)關鍵字synchronized,包括內容synchronized的使用、synchronized背后的Monitor、synchronized保證可見性和防重排序、使用synchronized注意嵌套鎖定,具體內容請看下面文章吧
    2021-10-10
  • Java中do-while循環(huán)的使用方法及注意事項詳解

    Java中do-while循環(huán)的使用方法及注意事項詳解

    這篇文章主要介紹了Java中do-while循環(huán)的使用方法及注意事項的相關資料,在Java編程中,do-while循環(huán)是一種基本的循環(huán)控制結構,它至少執(zhí)行一次循環(huán)體,然后根據(jù)條件判斷是否繼續(xù),文中將用法介紹的非常詳細,需要的朋友可以參考下
    2024-10-10
  • 解決Maven的pom.xml中設置repository不起作用問題

    解決Maven的pom.xml中設置repository不起作用問題

    這篇文章主要介紹了解決Maven的pom.xml中設置repository不起作用問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-03-03
  • Java中documentHelper解析xml獲取想要的數(shù)據(jù)

    Java中documentHelper解析xml獲取想要的數(shù)據(jù)

    本文主要介紹了Java中documentHelper解析xml獲取想要的數(shù)據(jù),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-02-02
  • 基于java springboot + mybatis實現(xiàn)電影售票管理系統(tǒng)

    基于java springboot + mybatis實現(xiàn)電影售票管理系統(tǒng)

    這篇文章主要介紹了基于java springboot + mybatis實現(xiàn)的完整電影售票管理系統(tǒng)基于java springboot + mybatis,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-08-08
  • Spring?Boot和Vue前后端分離項目架構的全過程

    Spring?Boot和Vue前后端分離項目架構的全過程

    前后端分離是目前互聯(lián)網(wǎng)開發(fā)中比較廣泛使用的開發(fā)模式,主要是將前端和后端的項目業(yè)務進行分離,下面這篇文章主要給大家介紹了關于Spring?Boot和Vue前后端分離項目架構的相關資料,需要的朋友可以參考下
    2022-04-04
  • Java項目中如何引入Hutool工具類并正確使用它

    Java項目中如何引入Hutool工具類并正確使用它

    Hutool是一個小而全的Java工具類庫,通過靜態(tài)方法封裝,降低相關API的學習成本,提高工作效率,使Java擁有函數(shù)式語言般的優(yōu)雅,這篇文章主要給大家介紹了關于Java項目中如何引入Hutool工具類并正確使用它的相關資料,需要的朋友可以參考下
    2024-01-01
  • Java環(huán)境安裝和編寫并運行第一個程序(使用?VSCode?輕松上手)

    Java環(huán)境安裝和編寫并運行第一個程序(使用?VSCode?輕松上手)

    這篇文章主要介紹了Java環(huán)境安裝和編寫并運行第一個程序的相關資料,文中介紹的是使用VSCode來實現(xiàn),通過這些步驟,初學者可以快速入門Java編程,需要的朋友可以參考下
    2025-04-04
  • 簡單了解java等待喚醒機制原理及使用

    簡單了解java等待喚醒機制原理及使用

    這篇文章主要介紹了簡單了解java等待喚醒機制原理及使用,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-12-12

最新評論