簡體   English   中英

從已編譯的源集中過濾類文件,以將其添加到Gradle / Groovy的JAR中

[英]Filter class files from compiled sourcesets to be added in a JAR in Gradle/Groovy

我正在嘗試將Project1的已編譯.class文件包含到Project2的jar中,因為我的項目結構要求完成該工作。 為此,在Project2build.gradle中,我寫道:

jar {
    from project(':Project1').sourceSets.main.output.classesDir
}

哪個成功完成了我必須做的事情。 但是,我現在想過濾一些基於路徑和/或某種模式添加的類。 例如,僅包括委托文件,我嘗試了以下方法:

jar {
    from project(':Project1').sourceSets.main.output.classesDir {
        include '**/*Delegate*.class'
    }
}

但不幸的是,它不起作用。 有沒有辦法在Gradle / Groovy中實現這一目標?

使用Gradle 2.12,以下對我build.gradle (這是Project 2的build.gradle ):

task myBuild(type: Jar) {
    baseName "myjar"
    from project(':Project1').sourceSets.main.output.classesDir, 
         { include "**/*Delegate*.*" } 
}

Jar.from的文檔中 ,請注意,它需要2個參數(因此,使用逗號)。

謝謝邁克爾

盡管我也得到了答案,但我只是缺少了一個寄生蟲。 正確且有效的代碼如下所示:

jar {
    from (project(':Project1').sourceSets.main.output.classesDir) {
        include '**/*Delegate*.class'
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM