1.背景
Flutterプロジェクトを新規作成すると、以下のエラーが発生するようになった時がありました。
別の場所に異なる名前で新規作成しても再発しました。
2.エラーメッセージ
PROBLEMS
The supplied phased action failed with an exception.
Settings file 'C:\app\flutter\09_new\03_taskapp_03\01\taskapp03\android\settings.gradle' line: 20
An exception occurred applying plugin request [id: 'dev.flutter.flutter-plugin-loader', version: '1.0.0']
Could not find implementation class 'FlutterAppPluginLoaderPlugin' for plugin 'dev.flutter.flutter-plugin-loader' specified in jar:file:/C:/Users/ysyam/.gradle/caches/jars-9/0d65baf31c51ab327bbd528a8d77c9ac/gradle-1.0.0.jar!/META-INF/gradle-plugins/dev.flutter.flutter-plugin-loader.properties.
FlutterAppPluginLoaderPlugin
3.発生場所
\android\settings.gradele(line: 20)
\android\settings.gradele(line: 20)
pluginManagement {
def flutterSdkPath = {
def properties = new Properties()
file("local.properties").withInputStream { properties.load(it) }
def flutterSdkPath = properties.getProperty("flutter.sdk")
assert flutterSdkPath != null, "flutter.sdk not set in local.properties"
return flutterSdkPath
}()
includeBuild("$flutterSdkPath/packages/flutter_tools/gradle")
repositories {
google()
mavenCentral()
gradlePluginPortal()
}
}
plugins {
id "dev.flutter.flutter-plugin-loader" version "1.0.0"
id "com.android.application" version "7.3.0" apply false
id "org.jetbrains.kotlin.android" version "1.7.10" apply false
}
include ":app"
4.対応記録
エラーが発生しました。キャッシュクリアコマンドを間違えていたらしく、今度は以下のコマンドで試行しました。
①Gradleのキャッシュクリア試行(2つ目)
\android>gradlew clean
\android>gradlew clean 試行結果:
\android>gradlew clean
BUILD SUCCESSFUL in 8s
7 actionable tasks: 7 up-to-date
一応クリアできたようでした。
②IDE再起動
上記エラーメッセージは表示されなくなりました。
5.所感
作業を振り返ると、(もしかしたら)次の作業が関係していたのかもしれません。
・flutter_riverpod関連コード作成
・riverpod_annotation パッケージインストール
・@riverpod アノテーション使用
・flutter pub run build_runner build
上記は、main.g.dart を作成(今回は更新)するためのものなのですが、
普段、メッセージ確認、ファイル内容確認をするところで、
割り込み作業(電話)があり、上記確認をせずに、一旦、上記作業を保存後、
すぐに別のFlutterプロジェクトの作業に移った、という経緯があることを、思い出しました。
故に、今回のキャッシュエラーは、build_runner が(なんらかの理由で)未完了だった、という可能性がありました。
(別途、確認してみる予定です)