0

install.xml で次の条件が定義されています。

<conditions>
    <condition type="contains" id="which.java">
        <variable>$SYSTEM_java_version</variable>
        <value>1.6</value>
    </condition>
</conditions>

そして、JREバージョンが1.6の場合にのみインストールしたいこのファイルがあります。

<file src="Releases/Other/Instalador/JCEUnlimitedCrypto/JRE6/local_policy.jar" targetdir="$INSTALL_PATH" condition="which.java"/>

ただし、このファイルはインストールされません。

私は何を間違っていますか?

前もって感謝します。

4

2 に答える 2

1

一般に、次のように、変数名から「$」を切り取る必要があります。

<conditions>
    <condition type="contains" id="which.java">
        <variable>variable</variable>
        <value>1.6</value>
    </condition>
</conditions>

この場合、SYSTEM_ プレフィックスを持つ変数の特別な解決が行われないため、これはおそらく機能しません。

変数をチェックしたい場合は、次のように、最初にこれを通常の IzPack 変数にマップする必要があります。

<variables>
  <variable name="java.version" value="${SYSTEM_java_version}"/>
</variables>

<conditions>
    <condition type="contains" id="which.java">
        <variable>java.version</variable>
        <value>1.6</value>
    </condition>
</conditions>

より簡単な方法は、通常の IzPack 変数リゾルバーを使用する次の方法です。

<conditions>
    <condition type="contains" id="which.java">
        <string>${SYSTEM_java_version}</string>
        <value>1.6</value>
    </condition>
</conditions>
于 2014-02-12T18:27:32.440 に答える
0

使用できます

<condition type="compareversions" id="isValidJavaVersion">
     <arg1>${previous.wrapper.java.version}</arg1>
     <arg2>1.6</arg2>
     <operator>lt</operator>
</condition>

こちらのリンクも参照できます

于 2015-10-08T19:48:05.553 に答える