簡體   English   中英

單個文件的SourceDirectorySet

[英]SourceDirectorySet of a single file

我正在嘗試創建一個由一組文件組成的自定義gradle源集(不一定位於同一目錄中)。 每個文件可能位於一個目錄中,該目錄包含不應視為源目錄集一部分的其他文件。

如何創建表示單個文件的SourceDirectorySet的實例?

我想使用此類實例通過source方法配置java源:

sourceSets {
    custom {
        java {
            source singleFileSourceDirectorySet
            source singleFileSourceDirectorySet2
            // ...
        }
    }
}

為每個文件的父目錄創建SourceDirectorySet (第6行)。 附加一個僅接受所選文件的過濾器(第7行)。

sourceSets {
    custom {
        java {
            final java.nio.file.Path srcPath = rootDir.toPath().resolve('path/to/a/File.java')
            final SourceDirectorySet sds = getObjects().sourceDirectorySet("name", "desc")
            sds.srcDir(srcPath.getParent().toFile())
            sds.filter { java.nio.file.Files.isSameFile(it.toPath(), srcPath) }
            source sds
        }
    }
}

暫無
暫無

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

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