2013-05-06 114 views
2

Launch4j似乎很容易設置,但在exe生成後,它不會從另一個位置運行。Launch4J exe仍然需要jar文件

用於創建啓動器的jar文件仍然需要在同一文件夾中的EXE。

我以爲它會包裝在exe文件中的罐子,並可以從任何地方運行它?我之前用JSmooth完成了它,它運行良好。但是,Windows 7不支持JSmooth。

也無法找到任何適當的文件。

這裏發生了什麼問題。

感謝, 尚卡爾。

回答

0

您的簡單方案適用於我。我需要填寫的唯一選項是Output file,Jar和Min JRE版本。其他所有內容都保留爲默認值。

有擠進JAR和不進旁邊的生成JAR文件夾所有的外部庫是很重要的。爲此,在導出可運行JAR時,在Eclipse中選擇「將所需的庫提取到生成的JAR中」選項。

0

如果我們談論的是包含主類的JAR,那麼這是配置:http://launch4j.sourceforge.net/docs.html#Configuration_file 你想設置什麼是dontWrapJartrue,但是這是默認值,所以你不得不改變的東西,如果它不是在EXE中。當切換這個布爾值時,可以清楚地看到尺寸差異(例如,在我的情況下,沒有JAR的情況下爲40K,包含16K JAR的情況下爲56.也可以在Total Commander中使用Ctrl + PgDn作爲任何其他ZIP,如果它具有JAR包括在內)。

在使用POM文件時com.akathist.maven.plugins.launch4j:launch4j-maven-plugin插件的選項命名相同 - dontWrapJar。在這種情況下,jar選項必須指向構建的JAR(在目標中),因爲它相對於EXE(並且都轉到目標),在大多數情況下它只是JAR的名稱。雖然JAR躺在EXE旁邊,但沒有必要運行EXE,可以將其刪除以檢查它。

這不告訴對此有其他的選擇和其他依賴任何東西,如果你需要的一切EXE比你需要使用一些uberjar解決方案。