我正在使用Ant为JavaFX应用程序构建一个自我部署的EXE。

当前,Inno Setup将EXE放在此处:C:\Users\username\AppData\Local\application name

我想将其放置在其他位置,并为用户提供覆盖此选项的选项。但是我似乎找不到更改此设置的 Ant 设置。

这可能吗?

谢谢!

最佳答案

实际上,您无法使用ANT更改此设置。但是,您已经知道部署机制使用Inno Setup,并且可以修改其行为。

fx:deploy ANT任务期间,将创建一个默认的ApplicationName.iss文件。该默认文件包含例如设置,它负责安装目录。仅当您不自行提供任何自定义内容时,才会创建此默认文件。因此,我建议运行ANT脚本,复制默认文件并进行修改。如果启用verbose任务的fx:deploy标志,则可以使用控制台输出来查找创建默认文件的位置,创建默认文件的位置以及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构建脚本。

如果到目前为止,您将在DisableDirPage=Yes文件中找到ApplicationName.iss行。将其更改为DisableDirPage=No,用户可以更改安装目录。

此外,您会发现参数DefaultDirName。如果您想在默认情况下将应用程序安装到C:\Program File\ApplicationName,则可以使用常量{pf},例如:DefaultDirName={pf}\ApplicationName

09-10 03:35
查看更多