Eclipse導出jar包後,jar包不能運行的解決方法

 最近在用Eclipse寫Java桌面程序,程序寫到菜單部分(JMenu)的部分,其中 |幫助|菜單下有一個|關於|的菜單項,實現程序說明(彈出小窗口)的功能,窗口內部插入了一張gif,在Eclipse內部運行正常,但是導出爲jar包的時候之後,既脫離Eclipse環境,就不能單獨運行。選擇不同的導出方式不行,網上搜索許久,沒有找到合適的解決方案,安裝FatJar插件導出仍然不能解決問題。

問題分析:考慮到之前我沒有插入gif的時候,導出爲jar包是可以運行的。整個項目的包結構是com.*****.*****.frame包內集合框架類,com.*****.*****.pictures包內集合需要的圖片,JLabel標籤插入圖片的代碼如下:

 

  1. ImageIcon logo = new ImageIcon(getClass().getResource("../pictures/logo.gif")); 
  2. //由於picture目錄裏面的內容相對於frame目錄的是../picture/*.*關係 
  3.  
  4. //後來折騰半天,把logo.gif直接放到和調用圖片的類在同一個目錄,再導出,程序能正常運行,於是參考網友的包結構,在src目錄下建立/p_w_picpaths/目錄,把圖片放到裏面,上面的引用語句改爲 
  5. ImageIcon logo = new ImageIcon(getClass().getResource("/p_w_picpaths/logo.gif")); 
  6.  
  7. //再導出後問題解決。原來java程序編譯時,會從src目錄逐層往下搜索文件引用 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章