第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

.jar 在 args 中傳遞有效文件時(shí)未運(yùn)行

.jar 在 args 中傳遞有效文件時(shí)未運(yùn)行

開心每一天1111 2021-09-12 20:19:37
我正在構(gòu)建一個(gè)應(yīng)用程序,它通過 XML 文件獲取輸入并基于它執(zhí)行許多操作。我知道該應(yīng)用程序有效,因?yàn)槲铱梢灾苯釉诖a中為 XML 提供一個(gè)文件,并且它會(huì)按原樣運(yùn)行。當(dāng)我嘗試通過打包的 .jar 的命令行參數(shù)將路徑傳遞到 XML 文件時(shí),問題就出現(xiàn)了。我的主要看起來像這樣:    public static void main(String[] args) {    LogWriter.openWriter();    LogWriter.log("Main start.");    Controller controller = new Controller();    LogWriter.log("Controller created.");    List<Parameters> parameters = new ArrayList<Parameters>();    for (int i = 0; i < args.length; i++) {        LogWriter.log("Got arg: " + args[i]);        File file = new File(args[i]);        LogWriter.log("Parameter file: " + file.getAbsolutePath());        if (file.exists()) {            LogWriter.log("File exists. Getting parameters.");            Parameters para = controller.getParameters(file);            LogWriter.log("Attempting to add parameters.");            parameters.add(para);            LogWriter.log("Added parameters.");        } else {            LogWriter.log("File is not valid.");        }    }}我用來運(yùn)行它的腳本如下所示:java -jar PDFRedacter.jar C:\Users\je\Downloads\XMLConfig.xml真正奇怪的是,只有當(dāng)我給它一個(gè)有效文件時(shí)它才會(huì)失敗。如果我提供無效文件,它會(huì)運(yùn)行,并記錄該文件無效,并且如前所述,如果我直接在代碼中輸入有效文件,它也會(huì)運(yùn)行。但是,在批處理中寫入有效路徑時(shí),甚至不會(huì)記錄第一個(gè)“主啟動(dòng)”,因此代碼根本不會(huì)運(yùn)行。這可能是一些訪問問題嗎?編輯:記錄器不是我的問題,無論有沒有有效文件,它都能按預(yù)期工作?!盁o效文件”日志示例:主要開始??刂破鲃?chuàng)建。得到 arg:C:\Users\je\Downloads\XMLConfig參數(shù)文件:C:\Users\je\Downloads\XMLConfig文件無效。澄清一下,問題實(shí)際上不是讀取文件。問題是,當(dāng)我通過批處理腳本提供有效文件時(shí),我的代碼似乎根本沒有運(yùn)行。最終編輯:事實(shí)證明問題只是我的 .jar 的包裝,缺乏依賴。正如其他人所建議的那樣,我的記錄器只是在執(zhí)行結(jié)束時(shí)才刷新,這就是為什么它沒有寫任何內(nèi)容的原因。感謝您的意見。
查看完整描述

1 回答

?
茅侃侃

TA貢獻(xiàn)1842條經(jīng)驗(yàn) 獲得超22個(gè)贊

正如托馬斯懷疑的那樣,程序失敗肯定有另一個(gè)原因,因?yàn)槟暮瘮?shù)應(yīng)該可以工作。如果您將其簡化為檢測(cè)文件是否存在,并且一旦您使其正常工作,請(qǐng)一個(gè)接一個(gè)地添加參數(shù)列表、控制器和記錄器,您可能會(huì)找到失敗的原因?!?/p>


這是我測(cè)試的示例 - 它適用于所有現(xiàn)有文件或目錄。


public static void main(String[] args) {

    for (int i = 0; i < args.length; i++) {

        System.out.println("Got arg: " + args[i]);

        File file = new File(args[i]);

        System.out.println("Parameter file: " + file.getAbsolutePath());

        if (file.exists()) {

            System.out.println("File exists. Getting parameters.");

        } else {

            System.out.println("File is not valid.");

        }

    }

}


查看完整回答
反對(duì) 回復(fù) 2021-09-12
  • 1 回答
  • 0 關(guān)注
  • 149 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)