我有一個 Eclipse 導出的 Runnable JAR file,雙擊后運行程序,里面的圖片都不見了。
上網搜尋了好久,給出的方法都特別復雜,都是修改原來引用圖片的代碼,不直接寫圖片位置,而是要用到 getResource() 方法。
不過有個帖子給了我靈感:圖片不顯示的原因就是 jar 包中的路徑不對,或者圖片沒有被打包進 jar 包。
下面是我解決該問題的具體步驟。
(1)我解壓后果然發現圖片不在,解決辦法就是 Eclipse 中右擊項目,選擇 Build Path > Configure Build Path,如下圖。
出現下面界面,點擊 Add Folder ,勾選上你圖片所在的文件夾,我的項目里,我將所有圖片儲存在了一個 images 的文件夾里。
(2)按上述操作完成后,再次生成 JAR 文件。選擇 Runnable JAR file,確認后再選擇 Package required ...,如下兩張圖。
(3)解壓生成的 Jar 文件,你會發現所有圖片直接在該文件夾下,沒有在子文件夾中,也就是說之前那個images文件夾已經不見了,所以你只需要在 Eclipse 中所有的圖片路徑中的“images/”刪去就好了,如果你有多個地方需要修改,你只需要查找“images/”然后替換處空着,點擊替換所有。這種方法會導致你 Eclipse 下不能正常運行該項目,但是重新再生成的 JAR 包可以正常運行,如果你想要恢復之前的修改也只需要一步撤銷就好了(建議生成 JAR 包后就撤銷,保證 Eclipse 能正常運行該程序,因為退出后再進入就不能撤銷,也比較難通過查找替換來恢復)。
(4)按步驟2重新生成 JAR 文件。大功告成。