看板 java 關於我們 聯絡資訊
其實標題真不知道該怎麼下... 來寶地詢問,實在是因為本人已經爬板爬得肌肉拉傷(誇張),餵狗又吐不出自己能 參(ㄌㄧˇ)考(ㄐㄧㄝˇ)的答案... ++ 以上表達對寶地高手的崇敬之心 ++ 目前情況是已經利用指令做出了可直接執行的jar檔,雙鍵點擊後也一切OK,可以執行 ,可是當我換台電腦測試能不能正常執行後,問題卻發生了...!! 當我搬動jar檔離開出生地後,卻再也無法執行,即使只是往上一層或往下一層資料夾 ,利用java -jar指令執行後發現內包的其中一個.txt檔無法被讀取(訊息:檔案開啟錯誤) 解開jar檔檢查,我確定該txt檔有被包在裡面 請問,這個問題可能是出在哪裡? jar檔不是可以被放在任何使用者可以存取到的目錄裡使用嗎? ++ 這是問(ㄏㄠˊ)題(ㄨˊ)結(ㄧˋ)束(ㄧˋ)的(ㄉㄜ˙)分線 ++ 應朋友要求做了一個小遊戲,卻無法傳給人家玩,總覺得好無奈...Q_Q -- 騎白馬的不一定是王子,有可能是唐僧;長翅膀的也不一定是天使,那叫鳥人。 請轉告王子,老娘正在披荊斬棘路上,還有雪山未翻,大河未過,巨龍未殺,帥哥未泡, 讓他繼續睡死沒關係! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.118.48.243
tomoyaken14:要注意如果程式碼有使用檔案或路徑時,需要用相對路徑 06/15 20:38
ff0704:有檔案,但是全部都是在同一層裡,這樣也需要使用相對路徑 06/15 20:42
ff0704:來表示嗎? 06/15 20:43
tomoyaken14:因為別人的電腦不一定會有你所謂的同一層資料夾..0.0 06/15 20:44
ff0704:可是我全都包進jar裡了啊? jar裡只有.class和.txt,沒有任 06/15 20:46
ff0704:和其他的資料夾了 06/15 20:48
tomoyaken14:比如說你的遊戲有一個音樂檔,如果遊戲執行時想要放 06/15 20:51
tomoyaken14:此音樂檔,class 檔會依據妳JAVA檔裡面寫的路徑來尋找 06/15 20:53
tomoyaken14:但是另一台電腦並沒有你的音樂檔或是路徑不同 06/15 20:56
tomoyaken14:就會發生執行時期的錯誤。 06/15 20:58
ff0704:也就是說即使是同一個jar裡,還是加上.\檔名比較保險? 06/15 21:01
tomoyaken14:嗯嗯,你先試試看吧 也或許是別的問題啦 再討論 06/15 21:04
ff0704:OK! jar的部分也和教授討論了好久,總是出現一些微妙的問題 06/15 21:16
還是不對,是不是程式碼方面問題? 可是在下包裝指令的那層的話就沒有問題啊... FileReader cardfile=null; try { cardfile=new FileReader("./DeckFile.txt"); // 原為DeckFile.txt } catch(IOException e) { System.out.println("檔案開啟錯誤"); System.exit(-1); } ※ 編輯: ff0704 來自: 122.118.48.243 (06/15 21:28)
tomoyaken14:你是用什麼包成.jar檔的呢? 是視窗化的程式設計嗎? 06/15 21:46