我正在设置一个新的 flutter 应用程序,我想使用 NDK 添加 opencv native (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
。
我无法使用指定参数运行 flutter:它会出错。
最佳答案
我找到了解决方案!
我在我的 build.gradle
中得到了那些行:
sourceSets {
main {
jniLibs.srcDirs = ['src/main/libs']
java.srcDirs = ['src']
...
}
}
所以我决定打开只包含
的src/main/libs
文件
../../../../OpenCV-Andoid-sdk/native/libs/
...错误的路径应该是:
../../../../sdk/native/libs/
我根据新的相对路径将正确的路径放入 gradle 文件中:
sourceSets {
main {
jniLibs.srcDirs = ['../../sdk/native/libs/']
java.srcDirs = ['src']
...
}
}
现在它可以完美编译了!多么棘手的错误,我花了 6 个晚上...
关于android - 如何修复 gradle 任务 ':app:mergeDebugJniLibFolders' in flutter gradle build for opencv native with NDK?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54450398/