[英]How do I create a Windows installer for a java jar file?
我想為我的 jar 文件創建一個 windows 安裝程序。 我不想在要部署到的目標計算機上安裝 jre/jdk。
我嘗試了 jpackage(Java 14 的一部分),但它對我不起作用。 我嘗試了以下命令:
jpackage --input target/ --name my_pkg --main-jar NtbnsProj.jar --main-class myJFrame --type exe --java-options '--enable-preview'
它會生成一個 my_pkg-1.0.exe,但我無法讓它運行。
在這一點上,我什至願意嘗試第三方工具。 我試過 install4j 沒有成功。 我發現另一個網站說將 install4j 與 Inno Setup Compiler 一起使用。 這更復雜,也不起作用。 我想也許 WiX 工具集可能會工作。
如果有人可以提供分步說明,特別是如果解決方案涉及 install4j,因為有許多不同的步驟您可能會錯過一些東西。 我使用的是較新版本的 install4j,它與在線教程和視頻不匹配。 菜單選擇發生了顯着變化。 也許我需要使用舊版本的 install4j。
請參閱我的相關文章: 如何在未安裝 JRE 的 Mac 上運行 package 和 java jar 文件?
仔細檢查您的應用程序是否直接運行,然后在繼續之前修復所有問題:
java -cp NtbnsProj.jar myJFrame
看起來jpackage
似乎已經工作,並生成了您的安裝程序my_pkg-1.0.exe
。 當你運行my_pkg-1.0.exe
檢查你是否有這個文件,然后運行它:
C:\Program Files\my_pkg\my_pkg.exe
如果失敗,請使用額外的 arguments --win-console --app-version 1.1
重新運行 jpackage,這將生成my_pkg-1.1.exe
並啟用控制台。 重新安裝並運行C:\Program Files\my_pkg\my_pkg.exe
可能會報告一條有用的錯誤消息,指出您的真正問題。
如果您不每次都升級--app-version
,Windows 將不會更新現有的 1.0 版本,或者您必須在重新應用相同版本的重新構建之前my_pkg-1.0.exe
。 它只是在沒有警告你的情況下運行和停止。
請參閱這篇文章,了解如何自動設置 app-ver。
我讓它工作。 @DuncG 對回答我的問題非常有幫助,我在 jar 文件所在的目錄中有一堆額外的文件。 所以我剛剛創建了一個新目錄,只將 NtbnsProj.jar 放入其中:然后我運行以下命令: jpackage --name Test --input. --main-jar NtbnsProj.jar
jpackage --name Test --input. --main-jar NtbnsProj.jar
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.