2

我正在使用 IZpack 为基于 JAVA Swing 的应用程序开发自定义安装程序。这个 Java 应用程序使用第 3 方外部 DLL。属性文件中提到了 DLL 的路径。通过读取这个属性文件,DLL 被加载到应用程序中 system.load () 功能。现在我正在使用 IZ pack 安装程序为我的应用程序创建安装程序。此安装程序将所有 DLL 转储到用户选择的安装目录中。现在我必须将属性文件中硬编码的 DLL 路径移动到安装目录。在这方面我需要帮助。谢谢, SK

4

1 回答 1

0

这可以通过在属性文件中使用 IzPack 变量来实现,并将这些文件作为可解析的文件包含到其中一个包中。

例如,假设有application.properties一行文件dll.path=${localSettingsDir}${FILE_SEPARATOR}dlls,其中${localSettingsDir}应该是 install.xml 中声明的变量。这可以通过以下方式完成:

<dynamicvariables>
    <variable name="localSettingsDir" value="$localSettingsDirUi" />
</dynamicvariables>

$localSettingsDirUi是为自定义面板上的字段指定的变量。这样,如果相应的字段发生更改,则变量$localSettingsDirUi会更改并且变量localSettingsDir也会动态更新。

然后在 install.xml 中的一个包中,您需要放置如下内容:

<packs>
  <pack name="Your Pack" required="yes">
     ...
     <file src="application.properties" targetdir="$INSTALL_PATH" />
     <parsable targetfile="$INSTALL_PATH/application.properties" type="javaprop"/>
     ...
  </pack>
  ...
</packs>

应该是这样的。

于 2012-05-24T08:13:17.380 回答