はじめに
Niantic Lightship ARDKのサンプルプロジェクトをビルド時に以下のエラーが発生し、ビルドすることができない状態に陥りましたので、解決策を記録します。
* What went wrong:
Could not determine the dependencies of task ':launcher:compileReleaseJavaWithJavac'.
> Installed Build Tools revision **.*.* is corrupted. Remove and install again using the SDK Manager
原因
GradleバージョンがARDKのサンプルプロジェクトとビルドしようとしているプロジェクトのバージョンがことなるため、Gradleが破損していると誤認識していることが原因です。
解消方法
Gradleのバージョン指定を修正することでビルドできるようになります。
具体的には、ARDKのサンプルコードのリポジトリのUnityバージョンそのままでAndroidプラットフォームに切り替えると ビルドプロセスの設定ファイルAssets/Plugins/Android/baseProjectTemplate.gradle
が生成されますが、Unityのバージョンを変更時、ここで定義されいてるGradleプラグインバージョンが自動で変更されないことが原因のようです。
dependencies {
// If you are changing the Android Gradle Plugin version, make sure it is compatible with the Gradle version preinstalled with Unity
// See which Gradle version is preinstalled with Unity here https://docs.unity3d.com/Manual/android-gradle-overview.html
// See official Gradle and Android Gradle Plugin compatibility table here https://developer.android.com/studio/releases/gradle-plugin#updating-gradle
// To specify a custom Gradle version in Unity, go do "Preferences > External Tools", uncheck "Gradle Installed with Unity (recommended)" and specify a path to a custom Gradle version
classpath 'com.android.tools.build:gradle:4.2.0'
**BUILD_SCRIPT_DEPS**
}
コメント部分翻訳版
// Android Gradleプラグインのバージョンを変更する場合は、それがUnityにプリインストールされているGradleバージョンと互換性があることを確認してください。
// UnityにプリインストールされているGradleバージョンを確認するには、こちらをご覧ください: https://docs.unity3d.com/Manual/android-gradle-overview.html
// 公式のGradleとAndroid Gradleプラグインの互換性表はこちらをご覧ください: https://developer.android.com/studio/releases/gradle-plugin#updating-gradle
// UnityでカスタムGradleバージョンを指定するには、「Preferences > External Tools」に移動し、「Gradle Installed with Unity (recommended)」のチェックを外して、カスタムGradleバージョンへのパスを指定します。
上記のコードの 4.2.0
の部分を自分の利用しているGradleプラグインバージョンに変更するとビルドが通るようになります。
なお、Unityバージョン毎のGradleバージョンはこちらに記載されています。
2022.3の場合、デフォルトのGradle versionは7.2なので、Gradle Plug-in versionに記載されている 7.1.2を入力すると良いです。