java 啟動(dòng)exe程序,傳遞參數(shù)和獲取參數(shù)操作
1、java中啟動(dòng)exe程序 ,并添加傳參
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è)參考,也希望大家多多支持腳本之家。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。
相關(guān)文章
常用的Java數(shù)據(jù)結(jié)構(gòu)知識(shí)點(diǎn)匯總
這篇文章主要介紹了常用的Java數(shù)據(jù)結(jié)構(gòu)知識(shí)點(diǎn)匯總,數(shù)據(jù)結(jié)構(gòu)分線性數(shù)據(jù)結(jié)構(gòu)和非線性數(shù)據(jù)結(jié)構(gòu),下面對(duì)此作詳細(xì)介紹,需要的小伙伴可以參考一下,希望對(duì)你的學(xué)習(xí)或工作有所幫助2022-03-03SpringBoot替換默認(rèn)的tomcat服務(wù)器的方法
Tomcat是Apache基金下的一個(gè)輕量級(jí)的Servlet容器,支持Servlet和JSP,Tomcat具有Web服務(wù)器特有的功能,在SpringBoot框架中,我們使用最多的是Tomcat,這是SpringBoot默認(rèn)的容器技術(shù),本文給大家介紹了Spring?Boot如何替換默認(rèn)的tomcat服務(wù)器,需要的朋友可以參考下2024-08-08idea注解參數(shù)換行時(shí)間日期格式設(shè)置方法
這篇文章主要介紹了idea注解參數(shù)換行時(shí)間日期格式設(shè)置方法,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-05-05SpringBoot實(shí)現(xiàn)Server-Sent Events(SSE)的使用完整指南
使用SpringBoot實(shí)現(xiàn)Server-Sent Events(SSE)可以有效處理實(shí)時(shí)數(shù)據(jù)推送需求,具有單向通信、輕量級(jí)和高實(shí)時(shí)性等優(yōu)勢(shì),本文詳細(xì)介紹了在SpringBoot中創(chuàng)建SSE端點(diǎn)的步驟,并通過代碼示例展示了客戶端如何接收數(shù)據(jù),適用于實(shí)時(shí)通知、數(shù)據(jù)展示和在線聊天等場(chǎng)景2024-09-09Java數(shù)據(jù)結(jié)構(gòu)之LinkedList從鏈表到實(shí)現(xiàn)
LinkedList是Java中常用的數(shù)據(jù)結(jié)構(gòu)之一,實(shí)現(xiàn)了鏈表的特性,支持快速添加、刪除元素,可以用于實(shí)現(xiàn)隊(duì)列、棧、雙向隊(duì)列等數(shù)據(jù)結(jié)構(gòu)。LinkedList的內(nèi)部實(shí)現(xiàn)采用了雙向鏈表,其中每個(gè)節(jié)點(diǎn)都包含前驅(qū)節(jié)點(diǎn)和后繼節(jié)點(diǎn)的引用,可以直接訪問鏈表的頭尾元素2023-04-04