有没有一种优雅的方式将特定的依赖项用作文件对象(将依赖项广播到文件对象)。
通常需要将文件作为参数传递给任务/ Ant 任务等。
我帮了我
configurations.myDependency.files.iterator().next()
但这看起来不是很直观。
最佳答案
我认为您的意思是配置而不是依赖关系。假设您有类似以下内容:
configurations{
myConf
}
dependencies{
myConf 'mydep:mydep:1.0'
}
然后,如果您确信
myConf
的所有依赖项中将只有一个文件,则可以执行configurations.myConf.singleFile
(返回类型为File
)。但是,由于配置可以包含多个文件,为了使代码更健壮,您应该遍历
configurations.myConf.files
中的所有文件(返回类型为Set<File>
)。如果您需要从配置中提取特定的依赖 jar ,则可以执行以下操作:
configurations.myConf.files { dep -> dep.name == 'mydep' }
其中
dep
的类型为Dependency
,返回类型为Set<File>
。有关更多详细信息,请参见Configuration javadoc。
关于gradle - 如何使用依赖项作为文件对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8314770/