1. 程式人生 > >java項目打包成可運行的jar,main方法帶參數

java項目打包成可運行的jar,main方法帶參數

結構 講解 可運行的jar 目錄 http bsp 3.1 三方庫 之間

轉載 侵聯刪!!!

原文地址:http://www.cnblogs.com/neillee/p/6063808.html#commentform

將 java 項目打包成可運行的 jar 包(main 函數帶參數),並上傳到 linux 服務器上運行

一、概述

java項目有兩種架構,一種是 B/S 架構的,一種是 C/S 架構的。
對於 B/S 架構來說,我們常見的 java ee 即是 B/S 架構,通常,開發人員會在本地進行開發,然後將項目打包成 war 文件,上傳至服務器,供調用。
而對於 B/S 架構來說,通常即是裏面有個主方法,就是我們常寫的 java 項目/程序。通常,開發完之後,將項目打包成 jar 包,隨後上傳至服務器,供調用。
本文,針對後者進行介紹。

二、需求描述

一個 java 項目,分包存放多個 java 文件,java 文件中,有依賴第三方庫(從外部導入的 jar 包)。其中,主函數(項目入口)位於項目的一個包內,主函數必須帶有四個參數。

三、導出 jar 包步驟

3.1 確保正確地寫完項目

這一步就不消說了。

3.2 選中項目,點擊右鍵

鼠標單擊項目名稱,選中後u,單擊右鍵,隨即彈出菜單列表

技術分享

3.3 選擇export

在彈出的列表中,選擇"Export...",隨即彈出 Export 的窗口

技術分享

3.4 選擇導出可運行的 jar 文件

在彈出的 Export 窗口中,點開 java ,選擇 Runable JAR file 選項。

技術分享

  • JAR file,單純只是將項目打包成 jar 包,一般用於java lib的導出,用於給其他人依賴開發使用
  • Runable JAR file,顧名思義,可運行的 jar 包,能夠被運行(因為隨後要指定項目入口)

選擇 Runable JAR file 選項,點擊 Next ,彈出 Runable JAR file Export 窗口

3.4 配置 JAR 包

在彈出的 Runable JAR file Export 窗口中,

技術分享

  • 修改 Launch configuration,選擇為你的項目的入口,即有主方法的類
  • Export destination ,選擇你想要導出的目錄
  • Library handling,幾個選項顧名思義,不做贅述
  • 點擊 Next

3.5 完成

導出過程可能會消耗一定時間,地下有綠色進度條提醒進度。等待片刻,即可完成整個過程。

技術分享

若項目有依賴第三方包,則有可能會彈出以下警示框,點擊 OK 即可。

技術分享

由於項目中可能存在一些不規範之初,在完成此步驟後,也許會彈出一個警告框。點擊 Details 可查看詳情,點擊 OK 進入導出過程。

技術分享

在 3.4 步驟中選擇的目標目錄中,即可看到導出的 jar 包。

技術分享

四、可運行 JAR 文件結構解析

4.1 解壓上述步驟得到的 JAR 包

文件目錄結構見下圖:

技術分享

  • META-INF 文件夾存放著項目的配置信息:
    • maven依賴(如果有的話, META-INF 中包含了 maven 文件夾)
    • 項目的 MANIFEST 信息(存放在 META-INF/MANIFEST.MF )Manifest-Version、Class-Path、Main-Class,註意它們後面的內容與冒號之間均有一個空格,這個空格必不可少
  • 其他文件夾都存放著 .class 文件(結構類似exlipse項目中的bin目錄),若有第三方依賴,則也有第三方包的 .class 文件

技術分享

四、服務器上運行

將文件上傳至服務器的步驟,本文就不贅述了。此處簡單講解一下運行過程。
進入可運行的 jar 包目錄,此處打開命令行,鍵入命令java -jar JSTUNServer.jar 5000 192.168.2.1 5001 192.168.2.3java -jar [jar包] [參數1 參數2 參數3...]),敲回車,即可運行。

技術分享

由於我選用的實例代碼需要特殊的環境,此處報的錯與本文論述的內容無關。此處就證明了上述過程的正確性。

java項目打包成可運行的jar,main方法帶參數