【Gradle】タスクを実行するときのカレントディレクトリの確認方法の紹介

Gradleのタスクを実行するときに、ファイルなどを相対パスで指定しても対象が存在しないという問題が発生したことはないでしょうか。

このような問題が発生するのは、実行するときのカレントディレクトリからの相対パスを使用して対象を取得していることが原因となる可能性があります。

今回は、Gradleのタスクを実行するときに、どこをカレントディレクトリとしているかの確認方法を紹介します。

スポンサーリンク

検証環境

検証に使用した環境/ライブラリを次に記載します。

  • Java
    • バージョン:11
  • Gradle
    • バージョン:6.7.1

確認方法

タスクの追加

build.gradleファイルに次のタスクを追加します。タスク名には、違う名前を設定しても問題ありません。

task printCurrentDirectory {
  doLast {
    println new File(".").absolutePath
  }
}

追加したタスクは、実行するときに作成したファイルオブジェクトから絶対パスを取得して、出力する処理を実施しています。

タスクの実行

コンソールを開いてbuild.gradleファイルのあるディレクトリに移動してから、次のコマンドを実行します。

gradle printCurrentDirectory

タスク名を違う名前にしている場合は、変更したタスク名を指定して実行してください。

タスクの結果

タスクの実行結果を確認することでカレントディレクトリを確認することができます。

検証環境では、次ようにGradleデーモンのディレクトリがカレントディレクトリとして結果が出力されました。

C:\Users\xxxx\.gradle\daemon\6.7.1\.

まとめ

Gradleを実行するときのカレントディレクトリの確認方法を紹介しました。