AndroidStudioで、とある開発中のプロジェクトにbuild-logicモジュールを作成しました。
ディレクトリの構造は次のとおりです。
- build-logic
- convention
- src
- main
- kotlin
- com
- takagimeow
- app
- build.gradle.kts
- gradle
- gradle.properties
- settings.gradle.ts
そして、作成したbuild.gradle.ktsを開くと次のようにハイライトされていない状態で表示されていました。
画面上部に表示されているAdd to standalone scripts
を試しにクリックしてみたところ、org/gradle/tooling/BuildException (java.lang.NoClassDefFoundError: org/gradle/tooling/BuildException)
というエラーも赤色で表示されてしまいました。
本来想定していたのは、次のように通常のbuild.gradleと同じようにシンタックスハイライトが実行されている状態でした。
色々試してみたところ、その上の階層にあるsettings.gradle.ktsにbuild.gradle.ktsが存在するconventionモジュールがインクルードされていないことに気づきました。
なので、試しにinclude(":convention")
を末尾に追加して、Sync Project with Gradle Files
を実行しました。
そして実行完了後、再度build.gradle.ktsを開いてみると今度はちゃんとシンタックスハイライトがされた状態で表示されるようになりました。
しかし、見ての通りまだ赤く表示されたエラーは消えていないことがわかります。
これを解決するために、一度ウィンドウを閉じて、Android Studioを再起動させてプロジェクトを開き直しました。
するとこれが功を奏してエラーも表示されなくなりました。