【问题标题】:How to fix gradle task ':app:mergeDebugJniLibFolders' in flutter gradle build for opencv native with NDK?如何在使用NDK的opencv native的flutter gradle构建中修复gradle任务':app:mergeDebugJniLibFolders'?
【发布时间】:2019-01-30 22:15:55
【问题描述】:

我正在设置一个新的 Flutter 应用,我想使用 NDK 添加 opencv 本机 (c++) 插件。

我已经安装并配置了 OpenCV 和 NDK(使用不同的 tutorials),但在尝试构建我的项目时出现此错误(flutter run):

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:mergeDebugJniLibFolders'.
> java.lang.NullPointerException (no error message)

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or -- 
debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 31s
Finished with error: Gradle task assembleDebug failed with exit code 1

我不知道它来自哪里,我的应用程序的build.gradle 中没有“任务”mergeDebugJniLibFolders。 我无法使用指定的参数运行颤振:它会出错。

【问题讨论】:

  • 尝试运行./gradlew assemble --debug --stacktrace --info 以获取更多日志。
  • 我试过了,这是我得到的:Execution failed for task ':app:mergeDebugJniLibFolders'. at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:110) ...trace blabla... Caused by: java.lang.NullPointerException at com.android.ide.common.resources.AssetItem.computePath(AssetItem.java:58) ...trace blabla...trace 中的文件都不是来自我的项目。

标签: android-ndk android-gradle-plugin java-native-interface build.gradle opencv4android


【解决方案1】:

我找到了解决办法!

我进入我的build.gradle 那些行:

sourceSets {
    main {
        jniLibs.srcDirs = ['src/main/libs']
        java.srcDirs = ['src']
        ...
    }
 }

所以我决定打开只包含

src/main/libs 文件

../../../../OpenCV-Andoid-sdk/native/libs/

...应该是错误的路径:

../../../../sdk/native/libs/

我将 corect 路径放入 gradle 文件中,考虑新的相对路径:

sourceSets {
    main {
        jniLibs.srcDirs = ['../../sdk/native/libs/']
        java.srcDirs = ['src']
        ...
    }
 }

现在它可以完美编译了!我花了 6 个晚上来解决一个多么棘手的错误……

【讨论】:

    猜你喜欢
    • 2019-11-01
    • 2020-07-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-01-22
    • 2016-04-12
    • 1970-01-01
    相关资源
    最近更新 更多