You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在Gradle的Copy任务中如何获取文件的绝对路径?

Gradle Copy任务获取源文件绝对路径方案

你在eachFile闭包中拿到的file参数是FileCopyDetails类型实例,不是普通的Java File对象,要获取源文件的绝对路径,调用它的file属性拿到对应源文件实例后,再调用absolutePath属性即可。

修改后的代码示例:

[...]
from ("some/source/") {
  include "*.*"
  into "some/destination"
        
  eachFile { file ->
    logger.info("Copied ${file.file.absolutePath} -> ${file.path}" )
  }
}

相关常用属性说明:

  • file.sourcePath:仅返回源文件相对于from配置目录的相对路径,所以你之前只能获取到文件名
  • file.file.absolutePath:源文件在当前系统中的完整绝对路径
  • file.path:目标文件相对于into配置目录的相对路径,如需获取目标文件的绝对路径,可以通过new File(destinationDir, file.path).absolutePath实现

内容的提问来源于stack exchange,提问作者AndreasInfo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 05:15:02