1. 程式人生 > >JAVA學習——工程打包為jar並執行以及使用批處理執行

JAVA學習——工程打包為jar並執行以及使用批處理執行

關於cmd命令:

在cmd視窗中雙擊之後會固定在當前試圖,backspace之後繼續顯示,不要以為執行完成,完成後會顯示一個新的命令列

1,將專案統一打包為一個jar包:

在你不需要配置檔案,不需要更改其他檔案,只需要執行的時候可以打一個,一般不會這樣做。

打包方式:右鍵工程——Export——java——ruannable JAR file ——點選三角選擇需要的檔案——Browse選擇jar包儲存

路徑——Finish。

jar包打好,然後怎麼執行呢?有兩種方式:

1、shift+右鍵在此處開啟命令列 :然後使用java命令開啟:java -jar jar包名.jar   (java和-jar中間的空格不可忽略)

2,、將方法一中的java命令寫入txt,然後重新命名字尾為bat生成批處理命令,點選*.bat執行

問題處理:如果jar無法執行:檢查jar包中META-INF資料夾中MANIFEST.MF中是否有設定Main-Class:  class檔名    (空一格寫class檔名)或者   執行java命令:java  -cp  jar包名.jar  類路徑(java -cp HelloWorld.jar org.test.HelloWorld)當然,這個命令也可以放在上面作為方法3

2,將專案中自己的程式碼打包為jar包:

在你需要配置檔案什麼的時候或者你的jar準備給別人用的時候,我們一般給乾淨的原始碼,這樣打包就比較好,但是依賴的jar怎麼處理呢? 我們先說打包吧。打包基本同統一打包;

右鍵工程——Export——java——JAR file ——點選三角選擇需要的檔案(這裡儘量只需要自己的程式碼)——Browse選擇jar包儲存路徑——Finish。

執行:將配置檔案,依賴的jar包copy出來,然後就開始編寫批處理檔案。我的目錄結構是這樣的

conf中是一些配置檔案


lib中就是jar包了,當然也包括我們自己的程式碼打包出來的jar包


檔案結構部署好之後就開始寫:對批處理(cmd)命令一如所知的可以看一些文章開頭的連結。 先貼圖吧,我的結構先貼出來做個參考。省略部分依賴jar包路徑。 基本就是這樣的寫法,這樣不需要main函式清單(也就是一種所說的),如果想寫多個批處理來執行自己的jar中的不同的程式,可以更改className的屬性, 我見過別人這樣寫過,在main中傳入引數,不說別的先上圖:
上圖是批處理檔案(start.dat)和程式的main方法,由於程式可能根據需要只執行一部分功能,所以前面加上了一個引數PARA=%1(%1表示命令列第一個引數 等會會講到),然後在類路徑後面加上 %PARA%,這樣就可以將para表示的引數傳入main函式執行所需功能,由於沒有傳入引數,預設type=4;執行全部功能;

在名start1.dat檔案中寫入:start.bat  1   這樣就可以執行start.dat 並且在main方法中傳入引數。

將main中傳入的引數1或者2等字串陣列取出轉換賦值給type