2017-01-02 139 views
1

比方说,我在摇篮这种相关性:如何有些依赖罐的拷贝在摇篮

providedCompile(
     'javax:javaee-api:7.0', 
     'org.slf4j:slf4j-api:1.7.21', 
     'com.fasterxml.jackson.core:jackson-databind:2.5.4', 
     'com.fasterxml.jackson.module:jackson-module-jaxb-annotations:2.5.4', 
     'net.sf.ehcache:ehcache:2.10.3', 
     'com.fasterxml.jackson.jaxrs:jackson-jaxrs-json-provider:2.5.4', 
) 

(我用providedCompile从战争插件作为AI)

我对于编译时间,但一切都建成后,我需要那些依赖于所使用的一些罐子(不是全部)复制到一对夫妇目录它们配置为在我的自由服务器库,在那之后我创建了一个码头工人这一点。例如,我需要排除ehcache jar,因为它们是应用程序服务器中的持久性引擎的一部分。

我曾尝试:

task copyRuntimeLibs(type: Copy) { 
    from (configurations. providedCompile - 'net.sf.ehcache:ehcache:2.10.3') 
    into "build/docker/dependenciesLibrary" 
} 

,但它不会工作。 ehcache中的Jars仍然被复制。

如何创建在摇篮副本任务获得罐子从,例如,那些杰克逊依赖(但不是抄袭的JavaEE-API的)

感谢

回答

2

您可以尝试

task copyRuntimeLibs(type: Copy) { 
    from (configurations.providedCompile){ 
     exclude 'ehcache-2.10.3.jar' 
    } 
    into "build/docker/dependenciesLibrary" 
} 

task copyRuntimeLibs(type: Copy) { 
    from (configurations.providedCompile){ 
     exclude 'ehcache*.jar' 
    } 
    into "build/docker/dependenciesLibrary" 
} 

,都将做工精细,

但实际上我不知道是否有使用方式“net.sf.ehcache:的Ehcache:2.10.3”直接而不是使用“的Ehcache-2.10.3.jar”排除 '的Ehcache的* .jar'