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包
上圖是批處理檔案(start.dat)和程式的main方法,由於程式可能根據需要只執行一部分功能,所以前面加上了一個引數PARA=%1(%1表示命令列第一個引數 等會會講到),然後在類路徑後面加上 %PARA%,這樣就可以將para表示的引數傳入main函式執行所需功能,由於沒有傳入引數,預設type=4;執行全部功能;
在名start1.dat檔案中寫入:start.bat 1 這樣就可以執行start.dat 並且在main方法中傳入引數。
將main中傳入的引數1或者2等字串陣列取出轉換賦值給type