2012-01-20 52 views
0

我正在使用OneJAR將我的應用程序打包到單個jar中。launch4j/OneJAR打包的.exe文件損壞

OneJAR創建的.jar文件在Windows上完美啓動,JOGL代碼正常運行。

然後我使用launch4j將此.jar文件轉換爲.exe文件。

當我嘗試執行該文件時,Windows(7)報告文件已損壞。

我的應用程序包含一些本地代碼(JOGL DLL),我猜可能與此有關。

如果我在沒有OneJAR的情況下創建一個可執行的jar文件並將其轉換爲.exe文件,但它會抱怨缺少的JOGL DLL文件(當然,因爲它們不能包含在沒有OneJAR之類的jar文件中)。

那麼有沒有人使OneJAR + launch4j + DLLs的組合工作,或者這是不會工作的東西?

回答

0

嘗試JarSplice,Launch4j對我來說工作得很好。

+0

謝謝,很高興知道。如果我不能讓OneJAR與launch4j一起玩,我會看看。 JarSplice可能會完成這項工作,但它似乎缺少任何腳本可能性,所以這將是我會盡量避免的手動構建步驟。我有大約十個罐子和一打原生庫,所以我不希望每次測試/發佈我的應用程序時手動添加它們。嗯......也許我可以破解它做我需要的東西......好吧,在我着手之前需要等待一些更多的答案。謝謝。 – nyholku

+0

Bah,我的愚蠢的錯誤,抱歉的噪音。問題在於我的Ant腳本有一個jstub Ant任務,它在launch4j有機會發揮它的魔力之前破壞了.jar文件。所以我可以報告OneJAR和launch4j完美結合,強烈推薦。 – nyholku

0

問題解決了,看到我對加文答案的評論,我的愚蠢的錯誤。

嗯,我的愚蠢的錯誤,抱歉的噪音。問題是 ,我的Ant腳本有一個jstub Ant任務,它在發射之前破壞了.jar文件 ,有機會發揮它的魔力。因此,我可以報告說,OneJAR和launch4j完美結合,強烈推薦。