MainApplication.java:84: error: class, interface, or enum expected }


1. issue
rnプロジェクトがnpm androidを実行している間にTask:app:compileDebugJavaWithJavacFAILEDが現れた.
> Task :app:compileDebugJavaWithJavac FAILED

Deprecated Gradle features were used in this build, making it incompatible with Gradle 7.0.

error Failed to install the app. Make sure you have the Android development environment set up: https://reactnative.dev/docs/environment-setup.
Error: Command failed: ./gradlew app:installDebug -PreactNativeDevServerPort=8081
Note: /Users/momo/wellgrower/node_modules/@react-native-async-storage/async-storage/android/src/main/java/com/reactnativecommunity/asyncstorage/AsyncStorageModule.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: /Users/momo/wellgrower/node_modules/react-native-webview/android/src/main/java/com/reactnativecommunity/webview/RNCWebViewManager.java uses unchecked or unsafe operations.
react-native-webviewで問題が発生した可能性があるため、react-native-webviewを削除すると、今回は以下のエラーが発生しました.
error Failed to install the app. Make sure you have the Android development environment set up: https://reactnative.dev/docs/environment-setup.
Error: Command failed: ./gradlew app:installDebug -PreactNativeDevServerPort=8081
/Users/momo/wellgrower/android/app/src/main/java/com/wellgrower/MainApplication.java:46: error: class, interface, or enum expected
  public ReactNativeHost getReactNativeHost() {
         ^
/Users/momo/wellgrower/android/app/src/main/java/com/wellgrower/MainApplication.java:48: error: class, interface, or enum expected
  }
  ^
/Users/momo/wellgrower/android/app/src/main/java/com/wellgrower/MainApplication.java:51: error: class, interface, or enum expected
  public void onCreate() {
         ^
/Users/momo/wellgrower/android/app/src/main/java/com/wellgrower/MainApplication.java:53: error: class, interface, or enum expected
    SoLoader.init(this, /* native exopackage */ false);
    ^
/Users/momo/wellgrower/android/app/src/main/java/com/wellgrower/MainApplication.java:54: error: class, interface, or enum expected
    initializeFlipper(this, getReactNativeHost().getReactInstanceManager());
    ^
/Users/momo/wellgrower/android/app/src/main/java/com/wellgrower/MainApplication.java:55: error: class, interface, or enum expected
  }
  ^
/Users/momo/wellgrower/android/app/src/main/java/com/wellgrower/MainApplication.java:73: error: class, interface, or enum expected
        aClass
        ^
/Users/momo/wellgrower/android/app/src/main/java/com/wellgrower/MainApplication.java:74: error: <identifier> expected
            .getMethod("initializeFlipper", Context.class, ReactInstanceManager.class)
                                                         ^
/Users/momo/wellgrower/android/app/src/main/java/com/wellgrower/MainApplication.java:74: error: <identifier> expected
            .getMethod("initializeFlipper", Context.class, ReactInstanceManager.class)
                                                                                ^
/Users/momo/wellgrower/android/app/src/main/java/com/wellgrower/MainApplication.java:74: error: ';' expected
            .getMethod("initializeFlipper", Context.class, ReactInstanceManager.class)
                                                                                     ^
/Users/momo/wellgrower/android/app/src/main/java/com/wellgrower/MainApplication.java:75: error: illegal start of type
            .invoke(null, context, reactInstanceManager);
            ^
/Users/momo/wellgrower/android/app/src/main/java/com/wellgrower/MainApplication.java:75: error: illegal start of type
            .invoke(null, context, reactInstanceManager);
                    ^
/Users/momo/wellgrower/android/app/src/main/java/com/wellgrower/MainApplication.java:75: error: <identifier> expected
            .invoke(null, context, reactInstanceManager);
                                 ^
/Users/momo/wellgrower/android/app/src/main/java/com/wellgrower/MainApplication.java:75: error: <identifier> expected
            .invoke(null, context, reactInstanceManager);
                                                       ^
/Users/momo/wellgrower/android/app/src/main/java/com/wellgrower/MainApplication.java:76: error: class, interface, or enum expected
      } catch (ClassNotFoundException e) {
        ^
/Users/momo/wellgrower/android/app/src/main/java/com/wellgrower/MainApplication.java:78: error: class, interface, or enum expected
      } catch (NoSuchMethodException e) {
      ^
/Users/momo/wellgrower/android/app/src/main/java/com/wellgrower/MainApplication.java:80: error: class, interface, or enum expected
      } catch (IllegalAccessException e) {
      ^
/Users/momo/wellgrower/android/app/src/main/java/com/wellgrower/MainApplication.java:82: error: class, interface, or enum expected
      } catch (InvocationTargetException e) {
      ^
/Users/momo/wellgrower/android/app/src/main/java/com/wellgrower/MainApplication.java:84: error: class, interface, or enum expected
      }
      ^
19 errors

FAILURE: Build failed with an exception.
2. solution
キーワードでClass、Interface or enum Expectedを検索し、MainApplicationを発見します.JAvaのかっこが正しくありません...
class, interface or enum expected
このメッセージの意味は、「キーワードclass、interface、enumがありません」です.しかし、通常は括弧"{"または"}"の個数が一致しない場合に発生する.開いているカッコ{"と閉じているカッコ}"の数が等しいことを確認します.
ソース:HoneymonのJava Guru
やはり間違えたときにキーワードを探すことが大切!