2013-08-22 59 views
0

注意:我沒有試過ImageIcon background = new ImageIcon(getClass().getResource("MyImage.jpg")); 在所有答案中提到。圖像加載中可執行文件jar

我的項目使用netbeans IDE運行正常。但是一旦我使用'Clean and build'導出到一個可執行的jar文件中,就會拋出一個空指針異常,並且圖像的框架甚至不會打開。 (executabe jar在「dist」文件夾中)

即使使用相對路徑後,圖像也不會加載。

  1. 我放在同一目錄下的可執行JAR的形象。(DIST)
  2. 我把圖像中的lib文件夾。 (DIST \ lib中)
  3. 我創建的src和RES文件夾,並把圖像中的這些文件夾中。(DIST \ SRC & DIST \ RES)

無工作以上的。

我用winRar打開罐子,看到圖像存在。但它永遠不會加載運行。 任何人都可以請幫助我。

回答

0

最後我想通了。

ImageIcon background = new ImageIcon(getClass().getClassLoader().getResource("MyImage.jpg")); 

一些class loader如何扮演一個巨大的角色!

此外,準確獲取文件名非常重要。 .JPG 在IDE中運行,但在導出到JAR時, 如果我們嘗試訪問MyImage.jpg

,它必須是名稱 .jpg本身