Gradle - игнорировать специальные банки из файла Jar
Я создаю проект, который создает файлы Jar из него, и я хотел, чтобы некоторые банки были исключены из окончательного файла, созданного из проекта.
Я пытаюсь, как показано ниже, хотя я дал предусмотренную Компиляцию, эти банки также включены в финальную банку.
Попытка с предоставленным Runtime, я получаю ошибку времени компиляции. также я хочу игнорировать банки, связанные с Tomcat, кто-нибудь может мне помочь?
apply plugin: "spring-boot"
apply plugin: "java"
apply plugin: "groovy"
apply plugin: "eclipse"
apply plugin: "idea"
repositories {
mavenLocal()
mavenCentral
}
configurations {
providedCompile
compile.extendsFrom providedCompile
}
jar {
exclude ("*db/**")
}
dependencies {
compile ("org.springframework.boot:spring-boot-starter-data-jpa:${springBootVersion}") {
exclude group:"org.springframework.boot", module: "spring-boot-starter-tomcat"
}
providedCompile "com.oracle:ojdbc6:11.2.0"
providedCompile "javax.servlet:javax.servlet-api:${servletApiVersion}"
// hc-commons jars
providedCompile "com.test.hc-commons:hc-commons-exception:${hcCommonsVersion}"
providedCompile "com.test.hc-commons:hc-commons-utils:${hcCommonsVersion}"
providedCompile "com.test.hc-commons:hc-commons-typeconverters:${hcCommonsVersion}"
providedCompile "com.test.hc-commons:hc-commons-mailing:${hcCommonsVersion}"
compile ("org.springframework.boot:spring-boot-starter-velocity:${springBootVersion}") {
exclude group:"org.springframework.boot", module: "spring-boot-starter-tomcat"
}
}
Примечание: я пробовал с предоставленным плагином базы и другие предложения, приведенные в Google
Спасибо за вашу помощь
1 ответ
Решение
Я смог решить с помощью метода JAR, как показано ниже
jar {
from {
(configurations.runtime - configurations.providedCompile).collect {
it.isDirectory() ? it : it
}
}
}
этот метод jar создает простой jar, исключая предусмотренные jar-файлы компиляции, но задача сборки все еще добавляет jar. нужно использовать задачу 'jar'