执行任务“:app:compileDebugJavaWithJavac”失败,react-native

mbyulnm0  于 2023-03-19  发布在  React
关注(0)|答案(9)|浏览(564)

配置打包程序时无法在项目中找到“expo”包启动JS服务器...在设备上构建和安装应用程序(cd android && ./gradlew installDebug)...
任务:应用程序:编译调试JavaWithJavac失败/媒体/rahul/其他文件/mob/第一个/android/应用程序/src/main/java/com/practice/主应用程序。java:5:错误:找不到符号导入com.facebook.react.ReactApplication;^符号:类React应用程序位置:软件包com.facebook.react /media/rahul/其他文件/mob/第一个/android/应用程序/源代码/主/java/com/实践/主应用程序。java:6:错误:找不到符号导入com.facebook.react.ReactNativeHost;^符号:类ReactNativeHost位置:软件包com.facebook.react /media/rahul/其他文件/mob/第一个/android/应用程序/源代码/主/java/com/实践/主应用程序。java:14:错误:找不到符号公共类MainApplication extends应用程序实现ReactApplication { ^ symbol:类React应用程序/媒体/rahul/其他文件/mob/第一个/android/应用程序/src/main/java/com/实践/主应用程序。java:16:错误:无法找到符号专用最终ReactNativeHost mReactNativeHost =新ReactNativeHost(this){ ^ symbol:类ReactNativeHost位置:class主应用程序/媒体/rahul/其他文件/mob/第一个/android/应用程序/src/main/java/com/practice/主应用程序。java:36:错误:无法找到符号公共ReactNativeHost getReactNativeHost(){ ^ symbol:类ReactNativeHost位置:class主应用程序/媒体/rahul/其他文件/mob/第一个/android/应用程序/src/main/java/com/实践/主活动。java:5:错误:MainActivity不是抽象的,并且不会覆盖ReactActivity公共类中的抽象方法getPackages()MainActivity扩展了ReactActivity { ^ /media/rahul/其他文件/mob/first/android/app/src/main/java/com/practice/MainApplication.java:16:错误:无法找到符号专用最终ReactNativeHost mReactNativeHost =新ReactNativeHost(this){ ^ symbol:类ReactNativeHost位置:class主应用程序/媒体/rahul/其他文件/mob/第一个/android/应用程序/src/main/java/com/practice/主应用程序。java:35:错误:方法未重写或实现超类型中的方法@Override ^ 8个错误
失败:生成失败,出现异常。

  • 出了什么问题:任务“:应用程序: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-native项目,请检查我是否正确地遵循以下步骤?1.首先创建react-native-app 2. npm运行弹出3.打开android studio,然后打开模拟器4. react-native运行android,但如上所述获得错误。

pbossiut

pbossiut1#

发生此错误是因为您的RN版本与Android的build.gradle版本不同。当您创建react-native应用时,它可能会创建如下Android应用:

android/app/build.gradle

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

因此,请检查node_modules文件夹,查找react-native文件夹并查找带有编号的文件夹,该编号为react-native版本。对于我来说,它是0.58.3,然后更新android/app/build.gradle

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

这就是全部。

yx2lnoni

yx2lnoni2#

你应该提供更多信息。你发布的错误没有多大帮助。
如果没有更多信息,您可以尝试:

cd android && ./gradlew clean

看看有没有帮助。

wooyq4lh

wooyq4lh3#

如果您是因为此React本机错误而出现在此处:

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

解决方案正在将**@react-native-community/toolbar-android更新为版本0.2.1**

yqkkidmi

yqkkidmi4#

不管怎么说,我在谷歌上搜索了一下类似的编译问题,问题是操作系统更新把JavaJDK从我的路径上擦除了。

y3bcpkx1

y3bcpkx15#

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

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

cuxqih216#

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

然后我跑:

1.一个月一个月

2. npx react-native run-android

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

qni6mghb

qni6mghb7#

[For被谷歌带到这里的人]
在我的例子中,错误出现在我尝试使用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'
8gsdolmq

8gsdolmq8#

我解决了这个问题,首先检查您的所有JAVA环境变量是否设置正确或没有设置它:JAVA主页:C:\程序文件\Java\jdk1.8.0_112 JDK主目录:%JAVA主目录% JRE主目录:%JAVA_HOME%\jre类路径:。;%JAVA_HOME%\库;%JAVA_HOME%\jre\库路径:....;%JAVA主目录%\bin
然后我将jdk路径org.gradle.java.home=C:\程序文件\Java\jdk1.8.x.x添加到gradle.properties
CD安卓系统&&./gradlew清洁CD..&& react原生运行安卓系统

cnwbcb6i

cnwbcb6i9#

大多数情况下,这是由于ANDROID_HOME的配置未正确完成。其他情况下,这是由于gradle版本不匹配
如果您正在使用较新Mac的默认zsh,请打开终端并键入以下命令
nano ~/.zshrc or vim ~/.zshrc
把这三行
导出ANDROID_HOME=$主页/库/安卓系统/软件开发包
导出路径=$PATH:$ANDROID_HOME/模拟器
导出路径=$PATH:$ANDROID_HOME/平台工具
保存文件然后运行

source ~/.zshrc

完全关闭终端并运行仿真程序

相关问题