使用Inno Setup 5的JavaFX自安装程序 - 在哪里放置修改.iss文件?

时间:2015-09-01 13:08:58

标签: java ant javafx inno-setup

我正在使用Ant和Inno Setup为JavaFX应用程序构建自我部署的EXE。

要更改安装文件夹,请遵循本主题的答案

JavaFX Self Installer With Inno Setup 5 - Allow user to change install directory

但是在改变之后我现在遇到了一个问题,我不知道在哪里放置新的.iss文件

我使用eclipse,这是我的项目树:

Quizz
|.settings
|bin
|build
  |build
  |deploy
    |bundles
        /* Exe here when I not change the iss file */
  |dist
  |project
  |build.xml
|src

这是我的文件的一部分,当我运行他时,他找不到图标和exe文件。

    [Files]
    Source: "Quizz\Quizz.exe"; DestDir: "{app}"; Flags: ignoreversion
    Source: "Quizz\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs

    [Icons]
    Name: "{group}\Quizz"; Filename: "{app}\Quizz.exe"; IconFilename: "{app}\Quizz.ico"; Check: returnTrue()
    Name: "{commondesktop}\Quizz"; Filename: "{app}\Quizz.exe";  IconFilename: "{app}\Quizz.ico"; Check: returnFalse()

   [Run]
    Filename: "{app}\Quizz.exe"; Parameters: "-Xappcds:generatecache"; Check: returnFalse()
    Filename: "{app}\Quizz.exe"; Description: "{cm:LaunchProgram,Quizz}"; Flags: nowait postinstall skipifsilent; Check: returnTrue()
    Filename: "{app}\Quizz.exe"; Parameters: "-install -svcName ""Quizz"" -svcDesc ""Quizz"" -mainExe ""Quizz.exe""  "; Check: returnFalse()

    [UninstallRun]
    Filename: "{app}\Quizz.exe "; Parameters: "-uninstall -svcName Quizz -stopOnUninstall"; Check: returnFalse()

所以问题是我应该把iss文件放在哪里?

如果有人可以帮助我,他会非常好。

1 个答案:

答案 0 :(得分:2)

我没有找到答案,但我找到了解决方法:

有两个.exe个文件,运行jar的应用程序.exe和Inno-Setup生成的自部署.exe

我使用Ant脚本生成应用.exe,方法是将nativeBundles更改为"所有"像这样:

    <fx:deploy 
      ...
      ...
      nativeBundles ="all"/>

运行后,Ant脚本会创建.jar.jnlp,jre和两个.exe

Inno Setup需要的应用程序.exe实际上会在您选择nativeBundles =&#34; exe&#34;时静默销毁。

所以使用nativeBundle="all"我可以自定义我的Inno Setup脚本,因此它会将exe和jre安装在正确的文件夹中。