問題

私は新しいフラッターアプリを設定しており、NDKを使ってopencv native(c ++)プラグインを追加したいと思います。

OpenCVとNDKをインストールして設定しました(異なるチュートリアルを使用)、プロジェクトをビルドしようとしているときにこのエラーが発生しました(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はありません。 指定された引数でフラッターを実行することはできません。エラーが発生します。

  ベストアンサー

私は解決策を見つけた!

私はbuild.gradleにそれらの行を取得します:

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

だから私はsrc/main/libsファイルを開くことにしました。

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

...間違ったパスでなければなりません:

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

私は新しい相対パスを尊重してgradleファイルにcorectパスを入れます:

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

そして今、それは完全にコンパイルされます!私が6晩過ごすトリッキーなエラー...