Apache Ant: возможно ли вставить / заменить текст из необработанного текстового файла? - PullRequest
4 голосов
/ 31 мая 2011

Я хотел бы взять текст из стандартного текстового файла и вставить его в XML, который копируется с помощью токенов-замен Apache Ant.Возможно ли это?

Пример (это то, что я использую до сих пор):

<macrodef name="generateUpdateFile">
    <sequential>
        <echo message="Generating update file ..." level="info"/>
        <copy file="update.xml" tofile="${path.pub}/update.xml" overwrite="true">
            <filterchain>
                <replacetokens>
                    <token key="app_version" value="${app.version}"/>
                    <token key="app_updatenotes" value="${app.updatenotes}"/>
                </replacetokens>
            </filterchain>
        </copy>
    </sequential>
</macrodef>

$ {app.updatenotes} в настоящее время является строкой, определенной в файле build.properties,Но вместо этого я хотел бы написать примечания по обновлению в простом текстовом файле и взять их оттуда.

1 Ответ

6 голосов
/ 31 мая 2011

Задача apache ant loadfile позволит прочитать ваш текстовый файл и поместить его содержимое в свойство app.updatenotes.

Вы можете просто использовать:

<loadresource property="app.updatenotes">
   <file file="notes.txt"/>
</loadresource>

Затем используйте ваш filterchain, как и раньше. loadresource имеет несколько параметров, например, для управления кодировкой вашего файла или для управления тем, как реагировать, если файл отсутствует или не читается.

...