Gradle Заменить текст в jsp с помощью фильтра

У меня есть jsp, содержащий ссылку css, которая выглядит как

<link type="text/css" href="/css/login-min.css" rel="stylesheet" />

Чтобы браузеры из кеширования файла css заменяем login-min. css с именем css и отметкой времени или номером версии

login-min.css?t=432432423423...

В ant я бы сделал что-то вроде

<tstamp>
  <format property="current.time" pattern="MMddyyyyhhmmssaa" offset="-5" unit="hour" />
</tstamp>

<replace dir="${deploy.path}/${name}/WEB-INF/jsp" value="login-min.css?t=${current.time}">
  <include name="includes/login_css_include.jsp" />
  <replacetoken>login-min.css</replacetoken>
</replace>

Для gradle я обновил страницу jsp, чтобы она выглядела как

<link type="text/css" href="/css/@loginCSS@" rel="stylesheet" />

и в build.gradle я делаю

import org.apache.tools.ant.filters.ReplaceTokens
war {
  webInf {
    from ("${webAppDir}/WEB-INF/jsp") {
      include: "/includes/login_css_include.jsp"
      filter(ReplaceTokens, tokens: [loginCSS: 'login-min.css?v=1'])
    }
  }
}

, но это не работает.

Этот работает, но меняет источник ... Я просто хочу, чтобы файлы в war были изменены.

import org.apache.tools.ant.filters.ReplaceTokens
war {
  webInf {
    from ("${webAppDir}/WEB-INF/jsp/includes/login_css_include.jsp") {
      it.eachFile {
        ant.replace(file: it.file, token: "@loginCSS@", value: "login-min.css?v=1")
      }
    }
  }
}

Я новичок в gradle, я делаю это совершенно неправильно? Кому-нибудь приходилось делать что-то подобное раньше? Использование gradle 1.0-milestone-1.

Спасибо

9
задан Mark Nenadov 23 March 2011 в 12:07
поделиться