任务 ':app:compileDebugJavaWithJavac' 执行失败。反应式
Posted
技术标签:
【中文标题】任务 \':app:compileDebugJavaWithJavac\' 执行失败。反应式【英文标题】:Execution failed for task ':app:compileDebugJavaWithJavac'. react-native任务 ':app:compileDebugJavaWithJavac' 执行失败。反应式 【发布时间】:2019-06-24 02:57:47 【问题描述】:配置打包器时在你的项目中找不到“expo”包 启动 JS 服务器... 在设备上构建和安装应用程序(cd android && ./gradlew installDebug)...
任务 :app:compileDebugJavaWithJavac 失败 /media/rahul/其他文件/mob/first/android/app/src/main/java/com/practice/MainApplication.java:5:错误:找不到符号 导入 com.facebook.react.ReactApplication; ^ 符号:类 ReactApplication 位置:包 com.facebook.react /media/rahul/其他文件/mob/first/android/app/src/main/java/com/practice/MainApplication.java:6:错误:找不到符号 导入 com.facebook.react.ReactNativeHost; ^ 符号:类 ReactNativeHost 位置:包 com.facebook.react /media/rahul/其他文件/mob/first/android/app/src/main/java/com/practice/MainApplication.java:14:错误:找不到符号 公共类 MainApplication 扩展应用程序实现 ReactApplication ^ 符号:类 ReactApplication /media/rahul/其他文件/mob/first/android/app/src/main/java/com/practice/MainApplication.java:16:错误:找不到符号 私有最终 ReactNativeHost mReactNativeHost = new ReactNativeHost(this) ^ 符号:类 ReactNativeHost 位置:类 MainApplication /media/rahul/其他文件/mob/first/android/app/src/main/java/com/practice/MainApplication.java:36:错误:找不到符号 公共 ReactNativeHost getReactNativeHost() ^ 符号:类 ReactNativeHost 位置:类 MainApplication /media/rahul/OTHER FILES/mob/first/android/app/src/main/java/com/practice/MainActivity.java:5:错误:MainActivity 不是抽象的,并且不会覆盖 ReactActivity 中的抽象方法 getPackages() 公共类 MainActivity 扩展 ReactActivity ^ /media/rahul/其他文件/mob/first/android/app/src/main/java/com/practice/MainApplication.java:16:错误:找不到符号 私有最终 ReactNativeHost mReactNativeHost = new ReactNativeHost(this) ^ 符号:类 ReactNativeHost 位置:类 MainApplication /media/rahul/OTHER FILES/mob/first/android/app/src/main/java/com/practice/MainApplication.java:35:错误:方法没有覆盖或实现超类型的方法 @覆盖 ^ 8 个错误
FAILURE:构建失败并出现异常。
出了什么问题: 任务 ':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-native 项目,请检查我是否正确执行了步骤? 1.先创建-react-native-app 2. npm 运行弹出 3.打开android studio,然后模拟器 4. react-native run-android 但出现上述错误。
【问题讨论】:
因此,向上滚动以查看更多详细信息。或者使用它推荐的那些标志之一运行它 【参考方案1】:出现此错误是因为您的 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"
就是这样。
【讨论】:
"查找带有数字的文件夹" - 你的意思是从 package.json 中获取版本号吗? ..这对我不起作用 我认为他在谈论:“project_folder\node_modules\react-native\android\com\facebook\react\react-native\”,在那里我找到了一个带有数字的文件夹......我试过了这个,但这不是我的情况的解决方案 你也可以查看你的 package.json 为你的 react-native 版本 为什么您的解决方案有效?【参考方案2】:您应该提供更多信息。您发布的错误不是很有帮助。
如果没有更多信息,您可以尝试:
cd android && ./gradlew clean
看看有没有帮助。
【讨论】:
我在命令行中进入了他的项目文件夹并粘贴了这个命令。它说它不识别 .命令作为内部或外部命令。您能否提供更多详细信息,您是如何解决此问题的? 试试 gradlew clean【参考方案3】:对于它的价值,我在这里结束了谷歌搜索我的类似编译问题,问题是操作系统更新已经从我的路径中清除了 Java JDK。解决这个问题。
【讨论】:
【参考方案4】:这发生在我身上,因为我忘记安装一些模块。
然后我跑:
1。 npm install
2。 npx react-native run-android
OBS:你也可以运行npx react-native link
。链接您的模块。
【讨论】:
【参考方案5】:我也有类似的崩溃报告。但就我而言,问题是JAVA_HOME
缺少环境变量。
我将它设置为与 Android Studio 中相同的路径并解决了问题:文件 -> 项目结构 -> SDK 位置 -> JDK 位置。
export JAVA_HOME="/Applications/Android Studio.app/Contents/jre/jdk/Contents/Home"
【讨论】:
【参考方案6】:如果你因为这个 React Native 错误而出现在这里:
> Task :react-native-community_toolbar-android:compileDebugJavaWithJavac FAILED
解决方案是将 @react-native-community/toolbar-android 更新到版本 0.2.1
【讨论】:
【参考方案7】:[对于被 Google 带到这里的人]
就我而言,在我尝试使用react-native link
链接@react-native-async-storage/async-storage
后出现错误。
我使用 React Native CLI 初始化了我的项目,它落后了几个小版本。但我将依赖项与npx react-native link
联系起来。 版本不匹配!
据我所知,这是该错误的根本原因。
您最有可能在 android/app/src/main/java/com/focustime/MainApplication.java
和 android/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'
【讨论】:
【参考方案8】:我解决了这个问题 首先检查您的所有 JAVA 环境变量是否设置正确 否则设置它: JAVA_HOME : C:\Program Files\Java\jdk1.8.0_112 JDK_HOME : %JAVA_HOME% JRE_HOME : %JAVA_HOME%\jre 类路径:.;%JAVA_HOME%\lib;%JAVA_HOME%\jre\lib 路径:.....;%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
【讨论】:
以上是关于任务 ':app:compileDebugJavaWithJavac' 执行失败。反应式的主要内容,如果未能解决你的问题,请参考以下文章