如何修复 gradle task ':app:mergeDebugJniLibFolders' in flutter gradle build for opencv native with NDK?
How to fix gradle task ':app:mergeDebugJniLibFolders' in flutter gradle build for opencv native with NDK?
我正在设置一个新的 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
应用程序中没有 'task' mergeDebugJniLibFolders
。
我不能 运行 对指定的参数颤抖:它会出错。
我找到了解决方案!
我进入 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 个晚上...
我正在设置一个新的 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
应用程序中没有 'task' mergeDebugJniLibFolders
。
我不能 运行 对指定的参数颤抖:它会出错。
我找到了解决方案!
我进入 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 个晚上...