java 啟動(dòng)exe程序,傳遞參數(shù)和獲取參數(shù)操作
String[] cmd = {'hh.exe','12315'}; Process process = null; try { ProcessBuilder pb = new ProcessBuilder(); pb.command(cmd); process=pb.start(); } catch (Exception e) { e.printStackTrace(); }finally { if (process != null){ process.destroy(); } }
在cmd中,第一個(gè)參數(shù)所要啟動(dòng)的EXE程序,第二個(gè)參數(shù)為 傳參;
2、在exe程序中獲取 傳遞的參數(shù)在步驟一中打開的“hh.exe”程序,也是基于java編寫的。
我們打印一下main方法的args[],即可拿到由上一個(gè)程序傳遞的參數(shù)。
public static void main(String args[]) {// for (int i=0;i<args.length;i++){ System.out.println(args[i]);// JOptionPane.showMessageDialog (null, args[i], '日志', JOptionPane.CANCEL_OPTION);// }// System.exit(0);//結(jié)束 當(dāng)前進(jìn)程
補(bǔ)充:java程序生成帶參數(shù)的可執(zhí)行exe文件
簡(jiǎn)介最近寫了一個(gè)代碼生成工具,可根據(jù)一些簡(jiǎn)單的配置自動(dòng)生成model、dao、service、serviceImpl和controller層的代碼,減少冗余代碼的開發(fā)量。聽取了同事的建議,把工具制作成可執(zhí)行工具,這樣可保證生成工具的獨(dú)立性,并且工具對(duì)原來的項(xiàng)目代碼不存在依賴。
環(huán)境配置1、JDK環(huán)境
2、idea或Eclipse
3、exe4j 下載地址:https://www.ej-technologies.com/download/exe4j/files
操作步驟1、將java程序打成jar包(不管你是web項(xiàng)目還是java application)。
在idea中打jar包的方式為:File->File Structrue->Atifacts->選擇'+'Add jar(From modules with dependencies…) ,然后選擇項(xiàng)目點(diǎn)擊OK->Build->Build Atifacts->Build or Rebuid。
2、使用exe4j將打包好的jar包生成exe可執(zhí)行文件。
(1)下載并安裝exe4j,進(jìn)入安裝目錄的bin文件夾下,雙擊打開'exe4j.exe'
(2)點(diǎn)擊next,選擇'JAR in EXE' mode
(3)點(diǎn)擊next,輸入將要生成的應(yīng)用的名稱和生成exe文件的路徑
(4)點(diǎn)擊next,這里注意點(diǎn)擊32-bit or 64-bit,如果是64位JDK環(huán)境,就勾選'Generate 64-bit executable'
(5)點(diǎn)擊next,輸入Executable name,并選中Console application,表示我們以命令行窗口的形式運(yùn)行生成工具。
(6)點(diǎn)擊next,右側(cè)點(diǎn)擊綠色“+”,Archive處選擇生成的jar文件,然后選擇jar文件中的主程序Main所在類
(7)點(diǎn)擊next,輸入JRE的環(huán)境配置
(8)連續(xù)點(diǎn)擊next,進(jìn)入到如下界面:
到此exe文件就生成成功了
運(yùn)行生成的exe文件在第三步設(shè)置的輸出路徑中,
1、進(jìn)入cmd命令行窗口,進(jìn)入exe文件所在目錄。
2、輸入生成的exe文化的名稱即可執(zhí)行該exe文件,如本例中輸入'cg.exe'即可運(yùn)行文件
可帶參數(shù)運(yùn)行的可執(zhí)行文件通常我們想要在運(yùn)行時(shí)指定配置參數(shù),這時(shí),我們只需要在'cg.exe'后面接上空格和參數(shù),如'cg.exe -t',在java程序Main方法中:public static void main(String[] args) args數(shù)組 可以接收到跟在命令行后面的參數(shù)。
注意事項(xiàng)
1、如果你的JDK環(huán)境為64位,第(4)步切記勾選'Generate 64-bit executable'
2、運(yùn)行可執(zhí)行文件就是不輸出,可能為第(5)步忘記勾選Console application。
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。
