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