[英]error while running `detox build -c android.emu.debug` Task :app:compileDebugJavaWithJavac FAILED in react native
While following the Detox [installation tutorial for android][1], I had the following error running the detox build -c android.emu.debug
在遵循 Detox [android 安装教程][1] 时,运行
detox build -c android.emu.debug
时出现以下错误
❯ detox build -c android.emu.debug detox[23052] INFO: [build.js] cd android &&./gradlew assembleDebug assembleAndroidTest -DtestBuildType=debug && cd..
❯ detox build -c android.emu.debug detox[23052] INFO: [build.js] cd android &&./gradlew assembleDebug assembleAndroidTest -DtestBuildType=debug && cd..
Task:app:generatePackageList Task:app:preBuild Task:react-native-gesture-handler:preBuild UP-TO-DATE Task:react-native-gesture-handler:preDebugBuild UP-TO-DATE Task:react-native-gesture-handler:checkDebugManifest UP-TO-DATE Task:react-native-gesture-handler:processDebugManifest UP-TO-DATE Task:react-native-reanimated:preBuild UP-TO-DATE Task:react-native-reanimated:preDebugBuild UP-TO-DATE Task:react-native-reanimated:checkDebugManifest UP-TO-DATE Task:react-native-reanimated:processDebugManifest UP-TO-DATE Task:react-native-screens:preBuild UP-TO-DATE Task:react-native-screens:preDebugBuild UP-TO-DATE Task:react-native-screens:checkDebugManifest UP-TO-DATE Task:react-native-screens:processDebugManifest UP-TO-DATE Task:react-native-vector-icons:preBuild UP-TO-DATE Task:react-native-vector-icons:preDebugBuild UP-TO-DATE Task:react-native-vector-icons:checkDebugManifest UP-TO-DATE Task:react-native-vector-icons:processDebugManifest UP-TO-DATE Task:react-native-webview:preBuild UP-TO-DATE
任务:app:generatePackageList 任务:app:preBuild 任务:react-native-gesture-handler:preBuild UP-TO-DATE 任务:react-native-gesture-handler:preDebugBuild UP-TO-DATE 任务:react-native-gesture-处理程序:checkDebugManifest 最新任务:react-native-gesture-handler:processDebugManifest 最新任务:react-native-reanimated:preBuild 最新任务:react-native-reanimated:preDebugBuild UP-TO -日期任务:react-native-reanimated:checkDebugManifest 最新任务:react-native-reanimated:processDebugManifest 最新任务:react-native-screens:preBuild 最新任务:react-native-屏幕:preDebugBuild UP-TO-DATE 任务:react-native-screens:checkDebugManifest UP-TO-DATE 任务:react-native-screens:processDebugManifest UP-TO-DATE 任务:react-native-vector-icons:preBuild UP-TO -DATE 任务:react-native-vector-icons:preDebugBuild 最新任务:react-native-vector-icons:checkDebugManifest 最新任务:react-native-vector-icons:processDebugManifest 最新任务:react-native-webview:preBuild UP-TO-DATE Task:react-native-webview:preDebugBuild UP-TO-DATE Task:react-native-webview:checkDebugManifest UP-TO-DATE Task:react-native-webview:processDebugManifest UP-TO-DATE Task:app:preDebugBuild UP-TO-DATE Task:react-native-screens:compileDebugAidl NO-SOURCE Task:react-native-vector-icons:compileDebugAidl NO-SOURCE Task:react-native-gesture-handler:compileDebugAidl NO-SOURCE Task:react-native-reanimated:compileDebugAidl NO-SOURCE Task:react-native-webview:compileDebugAidl NO-SOURCE Task:app:compileDebugAidl NO-SOURCE Task:react-native-gesture-handler:packageDebugRenderscript NO-SOURCE Task:react-native-reanimated:packageDebugRenderscript NO-SOURCE Task:react-native-screens:packageDebugRenderscript NO-SOURCE Task:react-native-vector-icons:packageDebugRenderscript NO-SOURCE Task:react-native-webview:packageDebugRenderscript NO-SOURCE Task:app:compileDebugRenderscript NO-SOURCE Task:app:checkDebugManifest UP-TO-DATE Task:app:generateDebugBuildConfig UP-TO-DATE Task:app:bundleDebugJsAndAssets SK
任务:react-native-webview:preDebugBuild UP-TO-DATE 任务:react-native-webview:checkDebugManifest UP-TO-DATE 任务:react-native-webview:processDebugManifest UP-TO-DATE 任务:app:preDebugBuild UP-TO -DATE 任务:react-native-screens:compileDebugAidl NO-SOURCE 任务:react-native-vector-icons:compileDebugAidl NO-SOURCE 任务:react-native-gesture-handler:compileDebugAidl NO-SOURCE 任务:react-native-reanimated: compileDebugAidl NO-SOURCE Task:react-native-webview:compileDebugAidl NO-SOURCE Task:app:compileDebugAidl NO-SOURCE Task:react-native-gesture-handler:packageDebugRenderscript NO-SOURCE Task:react-native-reanimated:packageDebugRenderscript NO-SOURCE任务:react-native-screens:packageDebugRenderscript NO-SOURCE 任务:react-native-vector-icons:packageDebugRenderscript NO-SOURCE 任务:react-native-webview:packageDebugRenderscript NO-SOURCE 任务:app:compileDebugRenderscript NO-SOURCE 任务:app: checkDebugManifest 最新任务:app:generateDebugBuildConfig 最新任务:app:bundleDebugJsAndAssets SK IPPED Task:app:prepareLintJar UP-TO-DATE Task:app:generateDebugSources UP-TO-DATE Task:react-native-gesture-handler:generateDebugBuildConfig UP-TO-DATE Task:react-native-gesture-handler:compileDebugRenderscript NO-SOURCE Task:react-native-gesture-handler:generateDebugResValues UP-TO-DATE Task:react-native-gesture-handler:generateDebugResources UP-TO-DATE Task:react-native-gesture-handler:prepareLintJar UP-TO-DATE Task:react-native-gesture-handler:generateDebugSources UP-TO-DATE Task:react-native-gesture-handler:javaPreCompileDebug UP-TO-DATE Task:react-native-gesture-handler:packageDebugResources UP-TO-DATE Task:react-native-gesture-handler:generateDebugRFile UP-TO-DATE
IPPED 任务:app:prepareLintJar 最新任务:app:generateDebugSources 最新任务:react-native-gesture-handler:generateDebugBuildConfig 最新任务:react-native-gesture-handler:compileDebugRenderscript 否-源任务:react-native-gesture-handler:generateDebugResValues 最新任务:react-native-gesture-handler:generateDebugResources 最新任务:react-native-gesture-handler:prepareLintJar 最新任务:react-native-gesture-handler:generateDebugSources 最新任务:react-native-gesture-handler:javaPreCompileDebug 最新任务:react-native-gesture-handler:packageDebugResources 最新任务:react -native-gesture-handler:generateDebugRFile UP-TO-DATE
> Task:react-native-gesture-handler:compileDebugJavaWithJavac FAILED /home/rogerd/dev/app_cachacagestor/node_modules/react-native-gesture-handler/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerRootViewManager.java:4: error: package com.facebook.react.module.annotations does not exist import com.facebook.react.module.annotations.ReactModule;
> 任务:react-native-gesture-handler:compileDebugJavaWithJavac FAILED /home/rogerd/dev/app_cachacagestor/node_modules/react-native-gesture-handler/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerRootViewManager。 java:4: error: package com.facebook.react.module.annotations does not exist import com.facebook.react.module.annotations.ReactModule; ^ /home/rogerd/dev/app_cachacagestor/node_modules/react-native-gesture-handler/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerRootViewManager.java:17: error: cannot find symbol @ReactModule(name = RNGestureHandlerRootViewManager.REACT_CLASS) ^ symbol: class ReactModule /home/rogerd/dev/app_cachacagestor/node_modules/react-native-gesture-handler/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerModule.java:16: error: package com.facebook.react.module.annotations does not exist import com.facebook.react.module.annotations.ReactModule;
^ /home/rogerd/dev/app_cachacagestor/node_modules/react-native-gesture-handler/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerRootViewManager.java:17:错误:找不到符号@ReactModule( name = RNGestureHandlerRootViewManager.REACT_CLASS) ^ symbol: class ReactModule /home/rogerd/dev/app_cachacagestor/node_modules/react-native-gesture-handler/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerModule.java: 16: error: package com.facebook.react.module.annotations does not exist import com.facebook.react.module.annotations.ReactModule; ^ /home/rogerd/dev/app_cachacagestor/node_modules/react-native-gesture-handler/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerModule.java:19: error: cannot find symbol import com.facebook.react.uimanager.UIBlock;
^ /home/rogerd/dev/app_cachacagestor/node_modules/react-native-gesture-handler/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerModule.java:19:错误:找不到符号导入Z4D236D9A2FEDA4BEC055C facebook.react.uimanager.UIBlock; ^ symbol: class UIBlock location: package com.facebook.react.uimanager /home/rogerd/dev/app_cachacagestor/node_modules/react-native-gesture-handler/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerModule.java:40: error: cannot find symbol @ReactModule(name=RNGestureHandlerModule.MODULE_NAME) ^ symbol: class ReactModule /home/rogerd/dev/app_cachacagestor/node_modules/react-native-gesture-handler/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerButtonViewManager.java:218: error: cannot find symbol @ReactProp(name = ViewProps.BORDER_RADIUS) ^ symbol: variable BORDER_RADIUS location: class ViewProps /home/rogerd/dev/app_cachacagestor/node_modules/react-native-gesture-handler/android/src/main/java/com/swmansion/gestu
^ symbol: class UIBlock location: package com.facebook.react.uimanager /home/rogerd/dev/app_cachacagestor/node_modules/react-native-gesture-handler/android/src/main/java/com/swmansion/gesturehandler/react/ RNGestureHandlerModule.java:40: error: cannot find symbol @ReactModule(name=RNGestureHandlerModule.MODULE_NAME) ^ symbol: class ReactModule /home/rogerd/dev/app_cachacagestor/node_modules/react-native-gesture-handler/android/src/main/ java/com/swmansion/gesturehandler/react/RNGestureHandlerButtonViewManager.java:218: error: cannot find symbol @ReactProp(name = ViewProps.BORDER_RADIUS) ^ symbol: variable BORDER_RADIUS location: class ViewProps /home/rogerd/dev/app_cachacagestor/node_modules/反应原生手势处理程序/android/src/main/java/com/swmansion/gestu rehandler/react/RNGestureHandlerEvent.java:41: error: method init in class Event cannot be applied to given types;
rehandler/react/RNGestureHandlerEvent.java:41:错误:class 事件中的方法初始化不能应用于给定类型; super.init(handler.getView().getId());
super.init(handler.getView().getId()); ^ required: int,long found: int reason: actual and formal argument lists differ in length where T is a type-variable: T extends Event declared in class Event /home/rogerd/dev/app_cachacagestor/node_modules/react-native-gesture-handler/android/src/main/java/com/swmansion/gesturehandler/react/RNViewConfigurationHelper.java:45: error: cannot find symbol return parent.getChildAt(((ReactViewGroup) parent).getZIndexMappedChildIndex(index));
^ 必需:int,long 找到:int 原因:实际参数列表和正式参数列表的长度不同,其中 T 是类型变量:T 扩展在 class 事件中声明的事件 /home/rogerd/dev/app_cachacagestor/node_modules/react-native-gesture -handler/android/src/main/java/com/swmansion/gesturehandler/react/RNViewConfigurationHelper.java:45: 错误: 找不到符号返回 parent.getChildAt(((ReactViewGroup) parent).getZIndexMappedChildIndex(index)); ^ symbol: method getZIndexMappedChildIndex(int) location: class ReactViewGroup /home/rogerd/dev/app_cachacagestor/node_modules/react-native-gesture-handler/android/src/main/java/com/swmansion/gesturehandler/react/RNViewConfigurationHelper.java:54: error: cannot find symbol String overflow = ((ReactViewGroup) view).getOverflow();
^ symbol: method getZIndexMappedChildIndex(int) location: class ReactViewGroup /home/rogerd/dev/app_cachacagestor/node_modules/react-native-gesture-handler/android/src/main/java/com/swmansion/gesturehandler/react/RNViewConfigurationHelper.java :54: 错误:找不到符号字符串溢出 = ((ReactViewGroup) view).getOverflow(); ^ symbol: method getOverflow() location: class ReactViewGroup /home/rogerd/dev/app_cachacagestor/node_modules/react-native-gesture-handler/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerModule.java:574: error: cannot find symbol final int rootViewTag = uiManager.resolveRootTagFromReactTag(ancestorViewTag);
^ 符号:方法 getOverflow() 位置:class ReactViewGroup /home/rogerd/dev/app_cachacagestor/node_modules/react-native-gesture-handler/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerModule.Z93F7425A07433D21C 574: 错误: 找不到符号 final int rootViewTag = uiManager.resolveRootTagFromReactTag(ancestorViewTag); ^ symbol: method resolveRootTagFromReactTag(int) location: variable uiManager of type UIManagerModule /home/rogerd/dev/app_cachacagestor/node_modules/react-native-gesture-handler/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerModule.java:582: error: cannot find symbol if (root.getRootView().getRootViewTag() == rootViewTag) { ^ symbol: method getRootViewTag() location: class ReactRootView /home/rogerd/dev/app_cachacagestor/node_modules/react-native-gesture-handler/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerModule.java:598: error: cannot find symbol uiManager.addUIBlock(new UIBlock() { ^ symbol: class UIBlock location: class RNGestureHandlerModule /home/rogerd/dev/app_cachacagestor/node_modules/react-native-gesture-handler/android/src/main/java/com/swmansion/gesturehandler/react/RNGesture
^ 符号:方法 resolveRootTagFromReactTag(int) 位置:变量 uiManager 类型为 UIManagerModule /home/rogerd/dev/app_cachacagestor/node_modules/react-native-gesture-handler/android/src/main/java/com/swmansion/gesturehandler/react/ RNGestureHandlerModule.java:582: 错误: 找不到符号 if (root.getRootView().getRootViewTag() == rootViewTag) { ^ 符号: 方法 getRootViewTag() 位置: class Reactrogernode/ -native-gesture-handler/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerModule.java:598:错误:找不到符号uiManager.addUIBlock(新UIBlock(){^符号:ZA2F2ED4F8EBC2CBB61C21A29DZ0 class RNGestureHandlerModule /home/rogerd/dev/app_cachacagestor/node_modules/react-native-gesture-handler/android/src/main/java/com/swmansion/gesturehandler/react/RNGesture HandlerModule.java:634: error: cannot find symbol int rootViewTag = uiManager.resolveRootTagFromReactTag(viewTag);
HandlerModule.java:634: 错误: 找不到符号 int rootViewTag = uiManager.resolveRootTagFromReactTag(viewTag); ^ symbol: method resolveRootTagFromReactTag(int) location: variable uiManager of type UIManagerModule /home/rogerd/dev/app_cachacagestor/node_modules/react-native-gesture-handler/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerModule.java:641: error: cannot find symbol if (root.getRootView().getRootViewTag() == rootViewTag) { ^ symbol: method getRootViewTag() location: class ReactRootView /home/rogerd/dev/app_cachacagestor/node_modules/react-native-gesture-handler/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerPackage.java:18: error: RNGestureHandlerPackage is not abstract and does not override abstract method createJSModules() in ReactPackage public class RNGestureHandlerPackage implements ReactPackage { ^ /home/rogerd/dev/app_cachacagestor/node_modules/react-native-gesture-handler/android/src/main/java/com/swmansion/g
^ 符号:方法 resolveRootTagFromReactTag(int) 位置:变量 uiManager 类型为 UIManagerModule /home/rogerd/dev/app_cachacagestor/node_modules/react-native-gesture-handler/android/src/main/java/com/swmansion/gesturehandler/react/ RNGestureHandlerModule.java:641: 错误: 找不到符号 if (root.getRootView().getRootViewTag() == rootViewTag) { ^ 符号: 方法 getRootViewTag() 位置: class Reactroger/appreactnodecagestor/home/ -native-gesture-handler/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerPackage.java:18:错误:RNGestureHandlerPackage 不是抽象的,并且不覆盖抽象方法 createJSModules() 在 ReactPackage public ZA2F2ED4F8EBC2CBB4RNGesADC40AB61DZC21 ReactPackage { ^ /home/rogerd/dev/app_cachacagestor/node_modules/react-native-gesture-handler/android/src/main/java/com/swmansion/g esturehandler/react/RNGestureHandlerStateChangeEvent.java:45: error: method init in class Event cannot be applied to given types;
esturehandler/react/RNGestureHandlerStateChangeEvent.java:45:错误:class 事件中的方法初始化不能应用于给定类型; super.init(handler.getView().getId());
super.init(handler.getView().getId()); ^ required: int,long found: int reason: actual and formal argument lists differ in length where T is a type-variable: T extends Event declared in class Event Note: /home/rogerd/dev/app_cachacagestor/node_modules/react-native-gesture-handler/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerButtonViewManager.java uses or overrides a deprecated API.
^ 必需:int,long 找到:int 原因:实际参数列表和正式参数列表的长度不同,其中 T 是类型变量:T 扩展在 class 事件中声明的事件 注意:/home/rogerd/dev/app_cachacagestor/node_modules/react-native -gesture-handler/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerButtonViewManager.java 使用或覆盖已弃用的 API。 Note: Recompile with -Xlint:deprecation for details.
注意:使用 -Xlint:deprecation 重新编译以获取详细信息。 Note: Some input files use unchecked or unsafe operations.
注意:某些输入文件使用未经检查或不安全的操作。 Note: Recompile with -Xlint:unchecked for details.
注意:使用 -Xlint:unchecked 重新编译以获取详细信息。 16 errors
16 个错误
FAILURE: Build failed with an exception.
FAILURE:构建失败并出现异常。
What went wrong: Execution failed for task ':react-native-gesture-handler:compileDebugJavaWithJavac'.
出了什么问题:任务':react-native-gesture-handler:compileDebugJavaWithJavac'的执行失败。
Compilation failed;
编译失败; see the compiler error output for details.
有关详细信息,请参阅编译器错误 output。
Try: Run with --stacktrace option to get the stack trace.
尝试:使用 --stacktrace 选项运行以获取堆栈跟踪。 Run with --info or --debug option to get more log output.
使用 --info 或 --debug 选项运行以获得更多日志 output。 Run with --scan to get full insights.
运行 --scan 以获得完整的见解。
Get more help at https://help.gradle.org
在https://help.gradle.org获得更多帮助
Deprecated Gradle features were used in this build, making it incompatible with Gradle 6.0.
此版本中使用了已弃用的 Gradle 功能,使其与 Gradle 6.0 不兼容。 Use '--warning-mode all' to show the individual deprecation warnings.
使用“--warning-mode all”显示各个弃用警告。 See https://docs.gradle.org/5.4.1/userguide/command_line_interface.html#sec:command_line_warnings
请参阅https://docs.gradle.org/5.4.1/userguide/command_line_interface.html#sec:command_line_warnings
BUILD FAILED in 5s 22 actionable tasks: 2 executed, 20 up-to-date detox[23052] ERROR: [cli.js] Error: Command failed: cd android &&./gradlew assembleDebug assembleAndroidTest -DtestBuildType=debug && cd..
5 秒内构建失败 22 个可操作任务:2 个已执行,20 个最新排毒 [23052] 错误:[cli.js] 错误:命令失败:cd android &&./gradlew assembleDebug assembleAndroidTest -DtestBuildType=debug && cd..
"react": "16.8.6", “反应”:“16.8.6”,
"react-native": "0.60.5", “反应原生”:“0.60.5”,
"detox": "^14.3.2", “排毒”:“^14.3.2”,
"mocha": "^6.2.0", "摩卡": "^6.2.0",
Does anyone know how to solve?有谁知道如何解决?
I solved it by changing the order of the maven repositories in android/build.gradle.我通过更改 android/build.gradle 中 maven 存储库的顺序解决了这个问题。 My allprojects looks like this:
我的所有项目看起来像这样:
allprojects {
repositories {
mavenLocal()
google()
jcenter()
maven {
// All of React Native (JS, Obj-C sources, Android binaries) is installed from npm
url("$rootDir/../node_modules/react-native/android")
}
maven {
// Android JSC is installed from npm
url("$rootDir/../node_modules/jsc-android/dist")
}
maven {
// All of Detox' artifacts are provided via the npm module
url "$rootDir/../node_modules/detox/Detox-android"
}
maven { url 'https://www.jitpack.io' }
}
} }
Thanks to gypsicoder感谢gypsicoder
https://github.com/software-mansion/react-native-gesture-handler/issues/1002 https://github.com/software-mansion/react-native-gesture-handler/issues/1002
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.