2017-09-05 62 views
0

如何转换以下的常规片断访问源组与科特林-DSL的gradle这个

URL[] urls = sourceSets.main.runtimeClasspath.files.collect { 
    it.toURI().toURL() 
} 

到科特林-DSL?特别是属性sourceSets似乎不可用,并且无法编译。

如何访问任务中的sourceSets?

回答

1

runtimeClasspath没有sourceSetclasspathsourceSet不同。但是如果你有兴趣获得例如与科特林-DSL,这里一个项目的main-sourceset是一个片段:

java { 
    val files: Set<File> = sourceSets["main"].java.srcDirs 
    println(files) 
} 

从任务

task("hello-src-set") { 
    val files: Set<File> = java.sourceSets["main"].java.srcDirs 
    println(files) 
} 
+0

有没有办法在一个任务来完成访问sourceSet?目前sourceSets变量似乎没有在我正在处理的任务范围内 – Chad

+0

我更新了你从任务 – guenhter

+0

访问源码集的答案似乎答案是正确的,但我不需要'java.sourceSets',而是需要而是通过()。sourceSets'方法访问它们。请修改,以便我可以接受!谢谢。 – Chad