2

私は、IZpack を使用して Java Swing ベースのアプリケーションのカスタム インストーラーに取り組んでいます。この Java アプリケーションは、サードパーティの外部 DLL を使用します。DLL のパスは、プロパティ ファイルに記載されています。このプロパティ ファイルを読み取ることにより、DLL は system.load でアプリケーションにロードされました。 () 機能。現在、IZ パック インストーラーを使用して、アプリケーションのインストーラーを作成しています。このインストーラーは、ユーザーが選択したインストール ディレクトリにすべての DLL をダンプします。ここで、プロパティ ファイルにハードコーディングされた DLL のパスをインストール ディレクトリに移動する必要があります。この点で助けが必要です。ありがとう、SK

4

1 に答える 1

0

これは、プロパティ ファイルで IzPack 変数を使用し、それらのファイルを解析可能としてパックの 1 つに含めることで実現できます。

例として、次のapplication.properties行を含むファイルがあるとします。dll.path=${localSettingsDir}${FILE_SEPARATOR}dllsここ${localSettingsDir}で、install.xml で宣言されている変数を指定する必要があります。これは次のように実行できます。

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

$localSettingsDirUiカスタム パネルのフィールドに指定された変数を次に示します。このように、対応するフィールドが変更される$localSettingsDirUiと、変数が変更され、変数localSettingsDirも動的に更新されます。

次に、install.xml のパックの 1 つに、次のようなものを配置する必要があります。

<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 に答える