繁体   English   中英

运行“detox build -c android.emu.debug”时出错任务:app:compileDebugJavaWithJavac 在本机反应中失败

[英]error while running `detox build -c android.emu.debug` Task :app:compileDebugJavaWithJavac FAILED in react native

在遵循 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..

任务: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任务: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 任务: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

> 任务: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:错误:找不到符号@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:错误:找不到符号导入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/反应原生手势处理程序/android/src/main/java/com/swmansion/gestu rehandler/react/RNGestureHandlerEvent.java:41:错误:class 事件中的方法初始化不能应用于给定类型; super.init(handler.getView().getId()); ^ 必需: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: 错误:找不到符号字符串溢出 = ((ReactViewGroup) view).getOverflow(); ^ 符号:方法 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); ^ 符号:方法 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: 错误: 找不到符号 int rootViewTag = uiManager.resolveRootTagFromReactTag(viewTag); ^ 符号:方法 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:错误:class 事件中的方法初始化不能应用于给定类型; super.init(handler.getView().getId()); ^ 必需: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。 注意:使用 -Xlint:deprecation 重新编译以获取详细信息。 注意:某些输入文件使用未经检查或不安全的操作。 注意:使用 -Xlint:unchecked 重新编译以获取详细信息。 16 个错误

FAILURE:构建失败并出现异常。

  • 出了什么问题:任务':react-native-gesture-handler:compileDebugJavaWithJavac'的执行失败。

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

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

  • https://help.gradle.org获得更多帮助

此版本中使用了已弃用的 Gradle 功能,使其与 Gradle 6.0 不兼容。 使用“--warning-mode all”显示各个弃用警告。 请参阅https://docs.gradle.org/5.4.1/userguide/command_line_interface.html#sec:command_line_warnings

5 秒内构建失败 22 个可操作任务:2 个已执行,20 个最新排毒 [23052] 错误:[cli.js] 错误:命令失败:cd android &&./gradlew assembleDebug assembleAndroidTest -DtestBuildType=debug && cd..


“反应”:“16.8.6”,

“反应原生”:“0.60.5”,

“排毒”:“^14.3.2”,

"摩卡": "^6.2.0",


有谁知道如何解决?

我通过更改 android/build.gradle 中 maven 存储库的顺序解决了这个问题。 我的所有项目看起来像这样:

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' }
}

}

感谢gypsicoder

https://github.com/software-mansion/react-native-gesture-handler/issues/1002

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM