сборка муравья для файлов javascript превращает мой $$ в $ - PullRequest
1 голос
/ 06 января 2012

Я работаю над сборкой муравья для объединения и минимизации моих файлов JavaScript.У меня есть отдельный файл свойств, в котором перечислены файлы js и порядок их загрузки.Я использую Mootools.Когда я запускаю следующий код в моей сборке, все мои $$ конвертируются в $:

<loadfile property="js.files" srcFile="${basedir}/${dir.source}/javascript.files">
    <filterchain>
        <striplinecomments>
            <comment value="#"/>
        </striplinecomments>

        <!-- this filter outputs lines delimited by "," -->
        <tokenfilter delimoutput=","/>
    </filterchain>
</loadfile>

<!-- create a place holder variable that we will append file contents to -->
<var name="concat.script.contents" value=""/>

<for list="${js.files}" param="file" delimiter=",">
    <sequential>
        <loadfile property="@{file}.script.contents" srcfile="${basedir}/${dir.static}@{file}"/>
        <var name="concat.script.contents" value="${concat.script.contents}${@{file}.script.contents}"/>

        <!-- output the file contents here, everything looks okay -->
        <echo>${@{file}.script.contents}</echo>
    </sequential>
</for>  

<!-- output the final result, now all $$ have been converted to $. why? -->
<echo>${concat.script.contents}</echo>

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

1 Ответ

0 голосов
/ 09 января 2012

Это ошибка муравья, наверное.

Двойной знак доллара $$ в регулярных выражениях заменяли на $ - дополнительный знак доллара используется в качестве экранирующего символа.

Используемая вами функция конкатенации имеет вызов ant-regexps. И трудно понять, где именно используются регулярные выражения, потому что, очевидно, вы не используете явные выражения явно. Итак, я предполагаю, что используемая вами функция конкатенации имеет внутренний вызов ant-regexps где-то.

Попробуйте использовать другой способ объединения. Concat задача, например, может помочь вам.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...