首頁 >Java >java教程 >為什麼我無法從 Eclipse 載入導出的 JAR 中的映像?

為什麼我無法從 Eclipse 載入導出的 JAR 中的映像?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-11-29 06:59:09784瀏覽

Why Can't I Load Images in My Exported JAR from Eclipse?

從Eclipse 匯出的JAR 中可載入圖片

載入從Eclipse 匯出的JAR 檔案時遇到影像無法呈現的情況可能會令人沮喪。儘管圖像存在於導出的 JAR 中,但由於載入技術不正確,它們可能不可見。

資源路徑變數和程式碼變體

一個重要的面向是正確使用資源路徑。引用的圖片應打包在 Eclipse 指定的資源資料夾中,或與專案結構中的原始程式碼一起放置。

可以使用多種方法載入圖片:

label.setIcon(new ImageIcon(MainFrame.class.getResource("/resources/header.jpg")));
URL url = getClass().getResource("/resources/header.jpg");
Image image = Toolkit.getDefaultToolkit().getImage(url);
label.setIcon(new ImageIcon(image));
try
{
    label.setIcon(new  ImageIcon(ImageIO.read(getClass().getResource("/resources/header.jpg"))));
}
catch (IOException e1)
{
    e1.printStackTrace();
}

解決資源載入問題

深入了解對於渲染圖像失敗的原因,與工作範例進行比較可能會有所幫助。以下部分介紹了插圖和逐步指南的場景,以幫助排除故障:

範例1

對於位於src 內的資源,請按照以下步驟操作:

  • 修改專案檔案結構,將資源當作套件內src.
  • 在程式碼中,在MainFrame 類別旁使用下列資源路徑:

    URL url = MainFrame.class.getResource("/resources/stackoverflow.png");
  • 導出為可運行的JAR 並運行它。

示例2

對於不在src 內但包含在項目中的資源:

  • 確保資源文件夾位於項目建構路徑上。
  • 在程式碼中存取影像,但省略資源前綴路徑:

    URL url = Main.class.getResource("/stackoverflow.png");
  • 如上所述匯出 JAR。

啟動配置

一旦可以載入映像在 Eclipse 中,設定啟動配置對於匯出 JAR 至關重要。透過這個簡單的過程來建立配置:

  • 右鍵點擊專案並選擇「運行」->「運行配置」。
  • 為您的專案建立新的啟動配置。
  • 匯出為Runnable 時確保選擇此設定JAR.

驗證

  • 檢查,應出現以下行:

    Rsrc-Main-Class: com.stackoverflow.test.Main
  • 擴充的 JAR 應包含以下檔案結構:

    stackoverflow.png (resource file)
  • 執行此 JAR 應該會成功渲染影像。

以上是為什麼我無法從 Eclipse 載入導出的 JAR 中的映像?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn