使用 Project.file()
方法能夠相對項目目錄定位一個文件
例 16.1. 定位文件
build.gradle
// 使用一個相對路徑
File configFile = file('src/config.xml')
// 使用一個絕對路徑
configFile = file(configFile.absolutePath)
// 使用一個項目路徑的文件對象
configFile = file(new File('src/config.xml'))`
file()
方法接收任何形式的對象參數(shù).它會將參數(shù)值轉換為一個絕對文件對象,一般情況下,你可以傳遞一個 String
或者一個 File
實例.如果傳遞的路徑是個絕對路徑,它會被直接構造為一個文件實例.否則,會被構造為項目目錄加上傳遞的目錄的文件對象.另外,file()函數(shù)
也能識別URL
,例如 file:/some/path.xml.
這個方法非常有用,它將參數(shù)值轉換為一個絕對路徑文件.所以請盡量使用 new File(somePath)
, 因為 file()
總是相對于當前項目路徑計算傳遞的路徑,然后加以矯正.因為當前工作區(qū)間目錄依賴于用戶以何種方式運行 Gradle.