[英]Inno Setup: Install other installer and run it before continuing my install
[英]JavaFX Self Installer With Inno Setup 5 - Allow user to change install directory
我正在使用Ant為JavaFX應用程序構建自部署EXE。
目前Inno Setup將EXE置於此處:C:\\ Users \\ username \\ AppData \\ Local \\ application name
我想將它放在不同的位置,並為用戶提供覆蓋它的選項。 但是我似乎無法找到螞蟻設置來改變它。
這可能嗎?
謝謝!
實際上你無法使用ANT改變這一點。 但是,您已經知道部署機制使用Inno Setup,您可以修改其行為。
在fx:deploy
ANT任務期間, fx:deploy
創建一個默認的ApplicationName.iss
文件。 此默認文件包含例如設置,該設置負責安裝目錄。 如果您不自行提供任何自定義,則僅創建此默認文件。 所以,我建議運行ANT腳本,復制默認文件並進行修改。 如果啟用fx:deploy
任務的verbose
標志,則可以使用控制台輸出來查找創建默認文件的位置以及ANT任務在創建默認文件之前搜索自定義文件的位置:
<fx:deploy
...
verbose="true">
<fx:info title="${appname}" vendor="${vendor}"/>
...
</fx:deploy>
在我的情況下,我找到了默認文件
C:\Users\gfkri\AppData\Local\Temp\fxbundler3627681647438085792\windows
並且必須將自定義文件放入
package/windows/ApplicationName.iss
相對於ANT構建腳本。
如果你到目前為止,你會在ApplicationName.iss
文件中找到DisableDirPage=Yes
行。 將其更改為DisableDirPage=No
,用戶可以更改安裝目錄。
您還可以找到參數DefaultDirName
。 如果要將應用程序安裝到C:\\Program File\\ApplicationName
,則可以使用常量{pf}
例如: DefaultDirName={pf}\\ApplicationName
。
最初的答案不再適用,因為該功能已添加到JDK中(只是不知道何時,但在使用1.8.0u60左右時它就在那里)。
只需將<installdirChooser>
添加為<bundleArguments>
並將其設置為true
:
<plugin>
<groupId>com.zenjava</groupId>
<artifactId>javafx-maven-plugin</artifactId>
<version>8.4.0</version>
<configuration>
<mainClass>your.mainclass</mainClass>
<verbose>true</verbose>
<bundleArguments>
<identifier>SOME-GUID-USED-FOR-UPDATE-DETECTION</identifier>
<installdirChooser>true</installdirChooser>
</bundleArguments>
</configuration>
</plugin>
免責聲明:我是javafx-maven-plugin的維護者
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.