gpt4 book ai didi

Android gradle如何排除特定文件夹?

转载 作者:行者123 更新时间:2023-12-03 05:00:05 25 4
gpt4 key购买 nike

我尝试构建项目,但发生此错误:

Error:Execution failed for task ':app:transformNativeLibsWithMergeJniLibsForDebug'.
> com.android.build.api.transform.TransformException: com.android.builder.packaging.DuplicateFileException: Duplicate files copied in APK lib/x86/libjniopenblas.so
File1: C:\Users\1\.gradle\caches\modules-2\files-2.1\org.bytedeco.javacpp-presets\openblas\0.2.19-1.3\2189141b6c83cc8e5b342b04e8f49e22996f72f4\openblas-0.2.19-1.3-android-x86.jar
File2: D:\Smart House\Sip projects\Camera\tipit\build\intermediates\bundles\default\jni

如何从构建中排除此目录 D:\Smart House\Sip projects\Camera\tipit\build\intermediates\bundles\default\jni ?

最佳答案

您可以在 packagingOptions 中使用 pickFirst仅使用 libjniopenblas.so 之一文件:

你需要得到正确的包名libjniopenblas.so来自文件 1 或文件 2:

android {

...

packagingOptions {

// This is using the library in File1
pickFirst 'org.bytedeco.javacpp-presets/openblas/lib/x86/libjniopenblas.so'

...
}

...
}

但是,您可以使用排除来代替上述内容。首先,找到使用 libjniopenblas.so 的依赖项通过从依赖树中检查它:
./gradlew app:dependencies

然后在找到它后,使用以下命令将其从库中排除:
compile('com.library.name:version') {
exclude "libjniopenblas.so"
// or exclude the module of the library
}

关于Android gradle如何排除特定文件夹?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46926255/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com