Android引入两个aar报错 More than one file was found with OS independent path 'lib/arm64-v8a/libc++_shared.so'
时间: 2024-02-23 14:00:00 浏览: 109
这个报错是由于引入的两个aar包中都含有相同的文件导致的,解决方法如下:
1.在项目的build.gradle文件中添加以下代码:
```
android {
packagingOptions {
exclude 'lib/arm64-v8a/libc++_shared.so'
}
}
```
2.如果第一种方法不起作用,可以尝试将其中一个aar包中的相同文件删除,或者将其中一个aar包中的相同文件重命名。
希望能够帮到您!
相关问题
上面两个都不好处理 ,怎么能再引入aar时不引入lib/arm64-v8a/libc++_shared.so
可以尝试在引入aar时排除掉指定的文件,实现方法如下:
1. 在项目的build.gradle文件中添加以下代码:
```
configurations {
implementation.exclude group: 'com.example', module: 'examplelibrary'
}
```
其中 `com.example` 是要排除的aar包的组名, `examplelibrary` 是要排除的aar包的包名。
2. 在引入aar包时,添加 `exclude` 参数,示例如下:
```
implementation(name: 'examplelibrary', ext: 'aar') {
exclude group: 'com.example', module: 'examplelibrary'
}
```
其中 `examplelibrary` 是要引入的aar包的包名, `com.example` 是要排除的aar包的组名。
希望这个方法能够帮助到您!
我要排除的是文件libc++_shared.so
如果需要排除的是某个具体的文件 `libc++_shared.so`,可以将上面的方法中的 `module` 改为文件名,示例如下:
在项目的build.gradle文件中添加以下代码:
```
configurations {
implementation.exclude group: 'com.example', module: 'libc++_shared.so'
}
```
在引入aar包时,添加 `exclude` 参数,示例如下:
```
implementation(name: 'examplelibrary', ext: 'aar') {
exclude group: 'com.example', module: 'libc++_shared.so'
}
```
其中 `examplelibrary` 是要引入的aar包的包名, `com.example` 是要排除的aar包的组名,`libc++_shared.so` 是要排除的文件名。
希望这个方法能够帮助到您!
阅读全文