Я хочу повторно использовать определенный фильтр для многих проектов, поэтому я хочу извлечь его и использовать одну банку, чтобы просто добавить его в любое веб-приложение.
Для сборки я использую Gradle 1.3 и следующий build.gradle
файл:
apply plugin: 'java'
dependencies {
compile group:'org.slf4j', name:'slf4j-api', version:'1.7.+'
testCompile group:'junit', name:'junit', version:'4.+'
compile group:'org.springframework', name:'spring-web', version:'3.+'
compile group:'org.slf4j', name:'slf4j-log4j12', version:'1.6.+'
compile group:'log4j', name:'log4j', version:'1.2.+'
providedCompile group: 'javax.servlet', name: 'javax.servlet-api', version:'3.+'
}
repositories {
mavenCentral()
}
Как видите, мне нужен api сервлета для успешной компиляции этого фильтра, поэтому я хочу добавить его как зависимость, предоставленную maven.
В любом случае, после запуска gradle build
я получаю следующую ошибку:
Не удалось найти метод providedCompile () для аргументов [{group = javax.servlet, name = javax.servlet-api, version = 3. +}] в корневом проекте 'hibernate-talk-context'.
Теперь я знаю, что не могу использовать providedCompile без плагина WAR, но мне нужно, чтобы проект был простым JAR. Есть другой способ сделать это?