2013-12-19 69 views
-2

我使用Launch4j爲我的代碼創建一個exe文件。該exe文件創建成功,但因爲我在我的代碼中使用一些圖像到GUI中,exe文件不起作用。我怎樣才能將我的圖像插入到exe文件?感謝名單安裝Launch4j創建exe文件包括照片

+1

您在嘗試運行EXE之前是否嘗試過運行JAR文件? 你確定圖像應該在這裏責怪? –

+0

是的,我試圖在之前運行jar文件,問題是一樣的。 – Ibrahim

+1

@Ibrahim然後它**與Launch4J **沒有任何關係。 –

回答

1

我的項目通常有一個文件夾結構是這樣的:

/src 
    /main 
     /java 
     /resources 
/test 
    ... 

(因爲我使用Maven; Launch4J具有良好的Maven插件,順便說一句)。

我將所有需要可用於應用程序的圖像放入/resources文件夾中。 在構建過程中,圖像被複制到輸出文件夾中,其中所有已編譯的.class文件都是。圖像現在在類路徑中。

訪問的資源(如圖片)在類路徑中,你可以使用類加載器,如:

  • 在根目錄(src/main/resources/image.jpg)的資源可以通過系統類加載器進行訪問:

    ClassLoader.getSystemResource("image.jpg"); 
    ClassLoader.getSystemResourceAsStream("image.jpg"); 
    
  • 資源在其他包(如com.example.MyClass資源應該在src/main/resources/com/example/image.jpg)可以通過類本身來訪問:

    MyClass.class.getClassLoader().getResource("image.jpg"); 
    

Launch4J從不抱怨有關,並使用圖像沒有任何問題,即使是在.exe文件。

+0

這工作完美。還有一個問題,如果您需要在另一臺計算機上運行您的應用程序,您爲您的圖像添加了哪個路徑文件到代碼中? – Ibrahim

+0

我已經更新了我的答案,以解釋一下如何使用它。 –