1. ホーム
  2. firebase

[解決済み] エラーで終了しました。Gradle タスク assembleDebug は終了コード 1 で失敗しました。

2022-02-17 11:14:47

質問

Launching lib\main.dart on HTC One M9PLUS in debug mode... Initializing gradle... Resolving dependencies... Gradle task 'assembleDebug'... registerResGeneratingTask is deprecated, use registerGeneratedResFolders(FileCollection) registerResGeneratingTask is deprecated, use registerGeneratedResFolders(FileCollection) registerResGeneratingTask is deprecated, use registerGeneratedResFolders(FileCollection) registerResGeneratingTask is deprecated, use registerGeneratedResFolders(FileCollection) registerResGeneratingTask is deprecated, use registerGeneratedResFolders(FileCollection) C:\flutter\.pub-cache\hosted\pub.dartlang.org\cloud_firestore-0.9.0\android\src\main\java\io\flutter\plugins\firebase\cloudfirestore\CloudFirestorePlugin.java:9: error: cannot find symbol import androidx.annotation.NonNull;
                          ^   symbol:   class NonNull   location: package androidx.annotation C:\flutter\.pub-cache\hosted\pub.dartlang.org\cloud_firestore-0.9.0\android\src\main\java\io\flutter\plugins\firebase\cloudfirestore\CloudFirestorePlugin.java:10: error: cannot find symbol import androidx.annotation.Nullable;
                          ^   symbol:   class Nullable   location: package androidx.annotation C:\flutter\.pub-cache\hosted\pub.dartlang.org\cloud_firestore-0.9.0\android\src\main\java\io\flutter\plugins\firebase\cloudfirestore\CloudFirestorePlugin.java:253: error: cannot find symbol
          public void onFailure(@NonNull Exception e) {
                                 ^   symbol: class NonNull C:\flutter\.pub-cache\hosted\pub.dartlang.org\cloud_firestore-0.9.0\android\src\main\java\io\flutter\plugins\firebase\cloudfirestore\CloudFirestorePlugin.java:274: error: cannot find symbol
                    public Void apply(@NonNull Transaction transaction)
                                       ^   symbol: class NonNull C:\flutter\.pub-cache\hosted\pub.dartlang.org\cloud_firestore-0.9.0\android\src\main\java\io\flutter\plugins\firebase\cloudfirestore\CloudFirestorePlugin.java:272: error: cannot find symbol
                    @Nullable
                     ^   symbol: class Nullable C:\flutter\.pub-cache\hosted\pub.dartlang.org\cloud_firestore-0.9.0\android\src\main\java\io\flutter\plugins\firebase\cloudfirestore\CloudFirestorePlugin.java:503: error: cannot find symbol
                    public void onFailure(@NonNull Exception e) {
                                           ^   symbol: class NonNull C:\flutter\.pub-cache\hosted\pub.dartlang.org\cloud_firestore-0.9.0\android\src\main\java\io\flutter\plugins\firebase\cloudfirestore\CloudFirestorePlugin.java:558: error: cannot find symbol
                    public void onFailure(@NonNull Exception e) {
                                           ^   symbol: class NonNull 7 errors

FAILURE: Build failed with an exception.

* What went wrong: Execution failed for task ':cloud_firestore:compileDebugJavaWithJavac'.
> Compilation failed; see the compiler error output for details.

* Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 26s Finished with error: Gradle task assembleDebug failed with exit code 1

firebaseをプロジェクトに追加しようとしたところです。

どうすればいいですか?

主な問題は、あなたが使用しているバージョン 0.9.0 の cloud_firestore プラグインは AndroidX に移行されましたが、あなたのプロジェクトは移行されていません。そのため、2つの選択肢があります。 cloud_firestore プラグインを使用するか、プロジェクトをAndroidXに移行してください。

プロジェクトをAndroidXに移行するには、上のコメントで紹介したリンク先( Firebase auth plugin crash IOS and and android #27422 ) と、私の最初の回答のAndroidセクション (投稿者: username アプリオマチックス をクリックし、ステップ1~3に進んでください。残りのステップとフォローアップの投稿は、さらなる問題を回避するのに役立つかもしれません。

以下、リンク先のページからStep1~3を引用します(私はIntelliJ Idea CEを使用し、Flutterプロジェクトの作成ではSwiftとKotlinを選択しています)。

1) Android StudioでFlutterプロジェクトのAndroid部分を開きます。Android Studio 3.3を使用していることを確認してください(私はIntelliJ Ideaを完全に閉じてAndroid Studioを開き、「Flutter」をクリックした後、「Android」をクリックしました)。 ファイル > 開く に移動し ~/IdeaProjects/[my_project]/android フォルダを作成しました。Androidプロジェクトを開き、Android Studioが同期を開始すると、Gradleプラグインを更新していいかというメッセージ/ポップアップが表示されたので、そのままにしておきました。バージョンアップされたのは 3.3.0 .)

2) 次の2行を [my_project]/android/gradle.properties ファイルを作成します。

android.useAndroidX=true
android.enableJetifier=true

備考 : というのは android.enableJetifier=true を設定することができた、あるいは設定する必要がありました。 false . おそらく他の誰かが、どのような条件下では truefalse . プロジェクトにまだAndroidXに移行していない追加のライブラリがあるかどうかが関係していると思うのですが、私の考えが正しければ、この設定があるときに true は、Android StudioがこれらのライブラリをAndroidXに移行するという意味なのか、それとも、これらのライブラリがまだAndroidXに対応していないという事実を考慮してコード調整を行うという意味なのか、どちらなのでしょうか?あるいは、私が完全に間違っていて、まったく別のことなのかもしれません。

3) Android Studioのメインメニューで Refactor > Migrate to Androidx... , プロジェクトのバックアップを.zipファイルに保存する . この後に ファイル > すべて保存 を実行し、Android Studioを終了します。

移行後の追加措置として、IntelliJ Ideaで、次のように実行します。 ツール > Flutter > Flutter Clean , ファイル > すべて保存 , ファイル > キャッシュを無効にして再起動する ここで、キャッシュの無効化と再起動の両方を選択し、再起動の後に ツール > Flutter > Flutter Packages Get .