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

Java項(xiàng)目打包部署之部署jar包和war包

 更新時(shí)間:2023年12月22日 11:08:20   作者:努力,努力,在努力!  
我們?cè)陂_(kāi)發(fā)環(huán)境部署項(xiàng)目一般通過(guò)ideal將項(xiàng)目打包成包,然后連接linux服務(wù)器,這篇文章主要給大家介紹了關(guān)于Java項(xiàng)目打包部署之部署jar包和war包的相關(guān)資料,需要的朋友可以參考下

一、概述:

本文將介紹將Java項(xiàng)目部署到Linux服務(wù)器上的步驟。首先,你需要了解服務(wù)器的基本知識(shí)和安裝Java環(huán)境的方法。然后,我們就jar包和war包兩種應(yīng)用部署到Linux服務(wù)器上來(lái)進(jìn)行講解,包括如何將應(yīng)用程序上傳到服務(wù)器,如何配置服務(wù)器,以及如何啟動(dòng)和停止應(yīng)用程序。

二、安裝Java環(huán)境

在Linux服務(wù)器上安裝Java環(huán)境是第一步。Java是一種跨平臺(tái)的編程語(yǔ)言,因此可以在多種操作系統(tǒng)上運(yùn)行。在Linux服務(wù)器上安裝Java環(huán)境非常簡(jiǎn)單,只需使用類似于apt-get或yum等命令行工具,通過(guò)命令安裝即可。

以下是在CentOS上安裝Java的命令:

1.查找當(dāng)前可以下載的jdk的版本

yum search java|grep jdk

2.執(zhí)行安裝命令

yum install java-1.8.0-openjdk

確保Java已安裝正確,通過(guò)以下命令檢查Java版本:

java -version

三、安裝Tomcat(war包需要)

將war項(xiàng)目部署到Linux服務(wù)器上后,需要配置服務(wù)器以運(yùn)行Java應(yīng)用程序。需要安裝Tomcat或Jetty等Web服務(wù)器來(lái)部署Java應(yīng)用程序。這些Web服務(wù)器可以從官方網(wǎng)站或代碼庫(kù)中下載。例如,要安裝Tomcat,請(qǐng)按照以下步驟操作:

在官方Tomcat網(wǎng)站上下載Tomcat .

解壓縮Tomcat到您的Linux服務(wù)器上,路徑為/opt/tomcat/latest。

設(shè)置環(huán)境變量,以便Tomcat可以使用Java 8。將以下代碼添加到您的.bashrc文件中:

export JAVA_HOME=/usr/
export CATALINA_HOME=/opt/tomcat/latest
export PATH=$PATH:$JAVA_HOME/bin:$CATALINA_HOME/bin

這里linux配置Tomcat并沒(méi)有寫的太詳細(xì),如果有些覺(jué)得不太懂得, 可以搜一下詳細(xì)的linux下安裝Tomcat的教程

四、部署 jar 包

1. 打包 jar 包

在項(xiàng)目根目錄下執(zhí)行以下 Maven 命令打包 jar 包:

mvn clean package

在 target 目錄下生成 jar 包。

2. 將 jar 包上傳到 Linux 服務(wù)器

上傳Java項(xiàng)目到服務(wù)器是準(zhǔn)備要執(zhí)行的下一步。通常可以使用FTP等文件傳輸工具將Java項(xiàng)目上傳到服務(wù)器。如果使用Windows操作系統(tǒng),則可以使用Xftp客戶端等工具,將Java項(xiàng)目上傳到Linux服務(wù)器上。

如果您想從Linux本地終端上傳Java項(xiàng)目,在Linux本地終端中使用rsync命令即可。以下是一個(gè)例:

rsync -avz -e ssh /path/to/local/java/project/ user@remote.server:/path/to/remote/java/project/

替換/path/to/local/java/project/和/path/to/remote/java/project/路徑,使用自己的路徑。

注意: 通常我們每次打包新上線的時(shí)候, 會(huì)把當(dāng)前正在運(yùn)行的包停掉但是保存著,上傳時(shí)千萬(wàn)不要直接覆蓋! 啟動(dòng)新的包后也不要立即刪除了之前的包! 不然你會(huì)后悔的。。。

3. 運(yùn)行 jar 包

運(yùn)行時(shí)按一下幾個(gè)步驟:

  • 進(jìn)入jar包所在目錄
cd /../..
  • 查詢所有進(jìn)程,找到項(xiàng)目端口號(hào)對(duì)應(yīng)的PID
netstat -ntpl

假設(shè)找到的項(xiàng)目的PID為: 8548

  • 執(zhí)行殺進(jìn)程命令(8548為PID)
kill -9 8548
  • 再次執(zhí)行查詢命令,沒(méi)有項(xiàng)目端口,表示殺死進(jìn)程成功
netstat -ntpl
  • 執(zhí)行啟動(dòng)jar包命令
nohup java -jar 項(xiàng)目包.jar >> 日志.log &
  • 日志中顯示啟動(dòng)完畢后退出日志 執(zhí)行查看進(jìn)程命令
netstat -ntpl
  • 查看實(shí)施日志
    tail -f 日志.log

五、部署 war 包

1.上傳war包

前面咱們已經(jīng)安裝了Tomcat, 并且介紹了怎么去打包怎么把本地的jar包上傳到linux服務(wù)器上,實(shí)際上部署war包的方式和部署jar包的方式區(qū)別并不大,前面都是打包 然后上傳war包,只不過(guò)war包需要上傳到Tomcat 的 webapps 目錄下,這個(gè)是固定的

打包: mvn clean package

2. 部署 war 包

  • 停掉當(dāng)前正在運(yùn)行的Tomcat服務(wù)器
/../tomcat/latest/bin/shutdown.sh
  • 停掉Tomcat之后查詢項(xiàng)目端口, 看是否停止成功
netstat -ntpl
  • 刪除tomcat的webapps目錄下的文件及文件夾

  • 將打好包的war包上傳到webapps 目錄下

  • 啟動(dòng) Tomcat。

/../tomcat/bin/startup.sh
  • 執(zhí)行查看進(jìn)程命令
netstat -ntpl
  • 查看實(shí)施日志
    tail -f 日志.log

六、jar 包和 war 包的優(yōu)缺點(diǎn)

  • jar 包的優(yōu)缺點(diǎn)

優(yōu)點(diǎn):

  • jar 包比較簡(jiǎn)單,可以在命令行上直接運(yùn)行。
  • jar 包非常適合用于獨(dú)立的 Java 應(yīng)用程序。

缺點(diǎn):

  • jar 包不支持 Web 應(yīng)用程序。如果要部署 Web 應(yīng)用程序,需要使用 war 包。
  • jar 包沒(méi)有標(biāo)準(zhǔn)的 Web 部署方式,需要手動(dòng)編寫啟動(dòng)腳本。
  • war 包的優(yōu)缺點(diǎn)

優(yōu)點(diǎn):

  • war 包是用于部署 Web 應(yīng)用程序的標(biāo)準(zhǔn)方式。
  • war 包可以自動(dòng)安裝配置。

缺點(diǎn):

  • 部署和配置 war 包相對(duì) jar 包來(lái)說(shuō)比較復(fù)雜。
  • 如果還沒(méi)有安裝 Java 應(yīng)用程序,需要額外安裝 Tomcat 等服務(wù)器。

七、總結(jié)一哈

對(duì)于 Java 項(xiàng)目的打包和部署操作,我們建議使用 Maven 進(jìn)行管理,特別是 Maven 插件 shade 和 war。使用這些插件可以非常方便地打包和部署項(xiàng)目。在使用時(shí)要注意依賴庫(kù)的版本兼容。

在部署 jar 包時(shí),可以將啟動(dòng)命令寫入 shell 腳本,方便管理。在部署 war 包時(shí),我們建議使用自動(dòng)化配置工具 Jenkins ,可以方便地部署和管理多臺(tái)服務(wù)器上的應(yīng)用程序。

總之,選擇合適的打包腳本插件和部署工具,可以為 Java 項(xiàng)目的打包和部署操作帶來(lái)更高效和方便的體驗(yàn)。

到此這篇關(guān)于Java項(xiàng)目打包部署之部署jar包和war包的文章就介紹到這了,更多相關(guān)部署jar包和war包內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • JavaWeb頁(yè)面中防止點(diǎn)擊Backspace網(wǎng)頁(yè)后退情況

    JavaWeb頁(yè)面中防止點(diǎn)擊Backspace網(wǎng)頁(yè)后退情況

    當(dāng)鍵盤敲下后退鍵(Backspace)后怎么防止網(wǎng)頁(yè)后退情況呢?今天小編通過(guò)本文給大家詳細(xì)介紹下,感興趣的朋友一起看看吧
    2016-11-11
  • SpringBoot全局異常處理方式

    SpringBoot全局異常處理方式

    本文詳細(xì)介紹了Spring?Boot中異常處理的多種方案,包括基于請(qǐng)求轉(zhuǎn)發(fā)、異常處理器、過(guò)濾器等方式,并對(duì)其特點(diǎn)、實(shí)現(xiàn)方式和適用場(chǎng)景進(jìn)行了詳細(xì)介紹,作者推薦了基于請(qǐng)求轉(zhuǎn)發(fā)和異常處理器+請(qǐng)求轉(zhuǎn)發(fā)補(bǔ)充的方案,認(rèn)為它們能實(shí)現(xiàn)統(tǒng)一的全局異常處理,并能自定義統(tǒng)一響應(yīng)信息格式
    2024-12-12
  • Java中Socket用法詳解

    Java中Socket用法詳解

    本文詳細(xì)講解了Java中Socket的用法,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-12-12
  • type-aliases-package的用法解讀

    type-aliases-package的用法解讀

    在Mybatis的mapper.xml文件中使用type-aliases-package可以簡(jiǎn)化resultType和parameterType的全類名指定,通過(guò)配置掃描指定包中的實(shí)體類,讓Mybatis自動(dòng)識(shí)別這些實(shí)體
    2024-11-11
  • 淺談一下數(shù)據(jù)庫(kù)連接池Druid德魯伊

    淺談一下數(shù)據(jù)庫(kù)連接池Druid德魯伊

    數(shù)據(jù)庫(kù)連接池就是一個(gè)容器持有多個(gè)數(shù)據(jù)庫(kù)連接,當(dāng)程序需要操作數(shù)據(jù)庫(kù)的時(shí)候直接從池中取出連接,使用完之后再還回去,和線程池一個(gè)道理,需要的朋友可以參考下
    2023-05-05
  • Java線程變量ThreadLocal源碼分析

    Java線程變量ThreadLocal源碼分析

    ThreadLocal用來(lái)提供線程內(nèi)部的局部變量,不同的線程之間不會(huì)相互干擾,這種變量在多線程環(huán)境下訪問(wèn)時(shí)能保證各個(gè)線程的變量相對(duì)獨(dú)立于其他線程內(nèi)的變量,在線程的生命周期內(nèi)起作用,可以減少同一個(gè)線程內(nèi)多個(gè)函數(shù)或組件之間一些公共變量傳遞的復(fù)雜度
    2022-08-08
  • 使用IDEA向Gitee提交SpringBoot項(xiàng)目進(jìn)行遠(yuǎn)程管理

    使用IDEA向Gitee提交SpringBoot項(xiàng)目進(jìn)行遠(yuǎn)程管理

    本文主要介紹了使用IDEA向Gitee提交SpringBoot項(xiàng)目進(jìn)行遠(yuǎn)程管理,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-01-01
  • 怎樣將一個(gè)JAR包添加到Java應(yīng)用程序的Boot?Classpath中

    怎樣將一個(gè)JAR包添加到Java應(yīng)用程序的Boot?Classpath中

    本文文章給大家介紹如何將一個(gè)JAR包添加到Java應(yīng)用程序的Boot?Classpath中,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),需要的的朋友參考下吧
    2023-11-11
  • 聊聊java中一些減少if else 的編碼習(xí)慣的方法

    聊聊java中一些減少if else 的編碼習(xí)慣的方法

    這篇文章主要介紹了聊聊java中一些減少if else 的編碼習(xí)慣的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-08-08
  • 注意Java中?new?BigDecimal(double?val)?的使用

    注意Java中?new?BigDecimal(double?val)?的使用

    這篇文章主要介紹了注意Java中?new?BigDecimal(double?val)?的使用,文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的朋友可以參考一下
    2022-07-07

最新評(píng)論