2014-02-19 3 views
0

У меня есть переменная = "name" в моем userInputSpec.xml. Я использую его для создания каталога внутри установки. $ INSTALL_PATH/$ {name}Изменение переменной UserInputPanel Izpack

Я хочу удалить пробелы, указанные в названии, прежде чем запускает панель установки. Я не хочу, чтобы пользователь вводил пробелы.

ответ

1

В IzPack 5.0, вы можете использовать динамические переменные с регулярным выражением фильтра для нее, см http://docs.codehaus.org/display/IZPACK/Dynamic+Variables:

<conditions> 
    <condition id="nameIsSet" type="exists"> 
    <variable>name</variable> 
    </condition> 
</conditions> 

<dynamicvariables> 
    <variable name="name.nospace" value="${name}" checkonce="true" condition="nameIsSet"> 
    <filters> 
     <regex regexp="\s+" 
      replace="" 
      defaultValue="${name}" 
      global="true"/> 
    </filters> 
    </variable> 
</dynamicvariables> 

В этом случае $ {name.nospace} может быть переменной для повторного использования, который будет устанавливается после того, как задана переменная $ {name} (и после нее она не изменилась).

Смежные вопросы