Android ndk 如何修复gradle任务';:app:mergeDebugJniLibFolders';在使用NDK的opencv本机的Flatter gradle构建中?

Android ndk 如何修复gradle任务';:app:mergeDebugJniLibFolders';在使用NDK的opencv本机的Flatter gradle构建中?,android-ndk,android-gradle-plugin,java-native-interface,build.gradle,opencv4android,Android Ndk,Android Gradle Plugin,Java Native Interface,Build.gradle,Opencv4android,我正在安装一个新的颤振应用程序,我想使用NDK添加opencv原生(c++)插件 我已经安装并配置了OpenCV和NDK(使用不同的工具),在我尝试构建我的项目(flatterrun)时出现了此错误: 我不知道它是从哪里来的,在我的应用程序的build.gradle中没有“任务”mergeDebugJniLibFolders。 我无法使用指定的参数运行颤振:它会出错。我找到了解决方案 我在我的build.gradle sourceSets { main { jniLibs

我正在安装一个新的颤振应用程序,我想使用NDK添加opencv原生(c++)插件

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

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

我找到了解决方案

我在我的
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个晚上的时间……

尝试运行
/gradlew assemble--debug--stacktrace--info
以获取更多日志。我尝试了,下面是我得到的结果:
任务执行失败:app:mergedebugjnilibolders'。在org.gradle.api.internal.tasks.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:110)
…跟踪blablabla<代码>由com.android.ide.common.resources.AssetItem.computePath(AssetItem.java:58)上的java.lang.NullPointerException引起。…跟踪blablablabla。。。跟踪中没有一个文件来自我的项目。
sourceSets {
    main {
        jniLibs.srcDirs = ['../../sdk/native/libs/']
        java.srcDirs = ['src']
        ...
    }
 }