任务 ':app:compileDebugJavaWithJavac' 的执行失败。反应原生



在配置打包程序时无法在项目中找到"expo"包正在启动JS服务器。。。正在设备上构建和安装应用程序(cd android&./gradlew installDebug)。。。

任务:app:compileDebugJavaWithJavac失败/media/rahul/OTHER FILES/mob/first/android/app/src/main/java.com/practice/MainApplication.java:5:错误:找不到符号导入com.facebook.react.ReactApplication;^symbol:类ReactApplication位置:包com.facebook.react/media/rahul/OTHER FILES/mob/first/android/app/src/main/java.com/practice/MainApplication.java:6:错误:找不到符号导入com.facebook.react.ReactNativeHost;^symbol:类ReactNativeHost位置:包com.facebook.react/media/rahul/OTHER FILES/mob/first/android/app/src/main/java.com/practice/MainApplication.java:14:错误:找不到符号公共类MainApplication扩展应用程序实现ReactApplication{^symbol:类ReactApplication/media/rahul/OTHER FILES/mob/first/android/app/src/main/java.com/practice/MainApplication.java:16:错误:找不到符号private final ReactNativeHost mReactNative Host=新的React NativeHost(this){^symbol:类ReactNativeHost位置:类MainApplication/media/rahul/OTHER FILES/mob/first/android/app/src/main/java.com/practice/MainApplication.java:36:错误:找不到符号public ReactNativeHost getReactNative Host(){^symbol:类ReactNativeHost位置:类MainApplication/media/rahul/OTHER FILES/mob/first/android/app/src/main/java.com/practice/MainActivity.java:5:error:MainActivity不是抽象的,并且没有覆盖ReactActivity中的抽象方法getPackages()公共类MainActivity扩展了ReactActivity{^/media/rahul/OTHER FILES/mob/first/android/app/src/main/java.com/practice/MainApplication.java:16:错误:找不到符号private final ReactNativeHost mReactNative Host=新的React NativeHost(this){^symbol:类ReactNativeHost位置:类MainApplication/media/rahul/OTHER FILES/mob/first/android/app/src/main/java.com/practice/MainApplication.java:35:错误:方法未重写或实现超类型中的方法@Override^8个错误

失败:生成失败,出现异常。

  • 出了什么问题:任务":app:compileDebugJavaWithJavac"的执行失败。

    编译失败;有关详细信息,请参阅编译器错误输出。

  • 尝试:使用--stacktrace选项运行以获取堆栈跟踪。使用--info或--debug选项运行以获得更多日志输出。使用--scan运行以获得完整的见解。

  • 获取更多帮助,请访问https://help.gradle.org

构建在22秒内失败15项可操作任务:14项已执行,1项最新任务无法在设备上安装应用程序,请阅读上面的错误以了解详细信息。确保你有一个正在运行的Android模拟器或连接的设备,并且设置您的Android开发环境:https://facebook.github.io/react-native/docs/getting-started.html

我是第一次设置react原生项目,请检查我是否正确地遵循了步骤?1.首先创建react原生应用程序2.npm运行弹出3.打开android工作室,然后打开模拟器4.react原生运行android但是如上所述出现错误。

出现此错误是因为您的RN版本与Android的build.gradle版本不同。当你创建一个react原生应用程序时,它可能会创建android应用程序,比如:

android/app/build.gradle
implementation "com.facebook.react:react-native:+"

因此,检查node_modules文件夹,查找react本机文件夹,并查找带有数字的文件夹,这些数字就是react本机型。对我来说,它是0.58.3,然后更新android/app/build.gradle:

implementation "com.facebook.react:react-native:0.58.3"

这就是全部。

如果您在这里是因为这个React Native错误:

> Task :react-native-community_toolbar-android:compileDebugJavaWithJavac FAILED

该解决方案正在将@react原生社区/工具栏android更新为0.2.1版本

您应该提供更多信息。你发布的错误帮助不大。

如果没有更多信息,您可以尝试:

cd android && ./gradlew clean

看看它是否有帮助。

值得一提的是,我在谷歌上搜索了类似的编译问题,问题是操作系统更新将Java JDK从我的路径上删除了。解决了这个问题。

[对于被谷歌带到这里的人]

在我的情况下,错误出现在我尝试使用react-native link链接@react-native-async-storage/async-storage之后。

我使用React Native CLI初始化了我的项目,这是后面的几个小版本。但我将依赖关系与npx react-native link联系起来版本不匹配

据我所知,这是那个错误的根本原因。

您最有可能在android/app/src/main/java/com/focustime/MainApplication.javaandroid/settings.gradle内部进行更改。如果您使用git进行开发,只需checkout这两个文件。

以下是RN link引入的更改:

diff --git a/android/app/src/main/java/com/focustime/MainApplication.java b/android/app/src/main/java/com/focustime/MainApplication.java
index ed18f44..2bdc42c 100644
--- a/android/app/src/main/java/com/focustime/MainApplication.java
+++ b/android/app/src/main/java/com/focustime/MainApplication.java
@@ -4,6 +4,7 @@ import android.app.Application;
import android.content.Context;
import com.facebook.react.PackageList;
import com.facebook.react.ReactApplication;
+import com.reactnativecommunity.asyncstorage.AsyncStoragePackage;
import com.facebook.react.ReactInstanceManager;
import com.facebook.react.ReactNativeHost;
import com.facebook.react.ReactPackage;
diff --git a/android/settings.gradle b/android/settings.gradle
index 20ccd07..f6f51cd 100644
--- a/android/settings.gradle
+++ b/android/settings.gradle
@@ -1,3 +1,5 @@
rootProject.name = 'FocusTime'
+include ':@react-native-async-storage_async-storage'
+project(':@react-native-async-storage_async-storage').projectDir = new File(rootProject.projectDir, '../node_modules/@react-native-async-storage/async-storage/android')
apply from: file("../node_modules/@react-native-community/cli-platform-android/native_modules.gradle"); applyNativeModulesSettingsGradle(settings)
include ':app'

我也收到了类似的崩溃报告。但在我的案例中,问题是缺少JAVA_HOME的环境变量。我将其设置为与Android Studio中相同的路径,并修复了问题:文件->项目结构->SDK位置->JDK位置。

export JAVA_HOME="/Applications/Android Studio.app/Contents/jre/jdk/Contents/Home"

这种情况发生在我身上,因为我忘记安装一些模块。

我跑步:

1.npm install

2.npx react-native run-android

OBS:你也可以运行npx react-native link。链接您的模块。

大多数情况下,这是由于ANDROID_HOME的配置没有正确完成。其他时候这是由于渐变版本与不匹配

如果您使用的是较新Mac的默认zsh打开终端并键入这些命令

nano ~/.zshrc or vim ~/.zshrc

并粘贴这三行

export ANDROID_HOME=$HOME/Library/Android/sdk
export PATH=$PATH:$ANDROID_HOME/emulator
export PATH=$PATH:$ANDROID_HOME/platform-tools

保存文件,然后运行

source ~/.zshrc

完全关闭终端并运行模拟器

在我的情况下是

我的React本机版本是0.62.2

buildToolsVersion = "31.0.0"
minSdkVersion = 21
compileSdkVersion = 31
targetSdkVersion = 31
supportLibVersion = "28.0.0"

所以我只更新compiledSdkVersiontargetSdkVersion

buildToolsVersion = "31.0.0"
minSdkVersion = 21
compileSdkVersion = 33
targetSdkVersion = 33
supportLibVersion = "28.0.0"

Android 13支持compiledSdkVersion,targetSdkVersion应更改为33

我通过首先检查是否正确设置了所有JAVA环境变量否则设置:

>  JAVA_HOME : C:Program FilesJavajdk1.8.0_112
>          JDK_HOME  : %JAVA_HOME%
>          JRE_HOME  : %JAVA_HOME%jre
>          CLASSPATH : .;%JAVA_HOME%lib;%JAVA_HOME%jrelib
>          PATH      : ....;%JAVA_HOME%bin

然后我添加了jdk路径:

org.gradle.java.home=C:\Program Files\java\jdk1.8.x.x

gradle.properties

最后,我在终端上运行了:

cd android &&./gradlew clean
cd .. && react-native run-android

当我在React Native项目中遇到这个问题时,我做了一些有用的步骤。按照以下方式操作:

  1. 在我的终端中,通过键入cd android移动到android文件夹
  2. 然后键入/gradlew干净。大约需要1分钟
  3. 键入返回根文件夹。。cd
  4. 运行此命令以重建npx react native Run android

相关内容

  • 没有找到相关文章

最新更新