Android 依赖 'com.google.android.exoplayer:exoplayer' 有不同版本的编译(r2.1.0)和运行时(2.9.1)类路径
Posted
技术标签:
【中文标题】Android 依赖 \'com.google.android.exoplayer:exoplayer\' 有不同版本的编译(r2.1.0)和运行时(2.9.1)类路径【英文标题】:Android dependency 'com.google.android.exoplayer:exoplayer' has different version for the compile (r2.1.0) and runtime (2.9.1) classpathAndroid 依赖 'com.google.android.exoplayer:exoplayer' 有不同版本的编译(r2.1.0)和运行时(2.9.1)类路径 【发布时间】:2019-04-30 12:56:07 【问题描述】:我在我的应用中使用了这两个模块(react-native-video & react-native-nyt-360-video
):
package.json:
...
"dependencies":
"react": "16.8.3",
"react-native": "0.59.5",
"react-native-nyt-360-video": "1.0.2",
"react-native-video": "^4.4.1"
...
,
app/build.gradle:
...
dependencies
...
implementation project(':react-native-video')
implementation project(':react-native-nyt-360-video')
implementation fileTree(dir: "libs", include: ["*.jar"])
implementation "com.android.support:appcompat-v7:$rootProject.ext.supportLibVersion"
implementation "com.facebook.react:react-native:+" // From node_modules
我需要将这两个模块放在一起,因为我的应用必须同时播放普通视频和 360 度视频。
现在当我运行项目 (react-native run-android
) 时遇到了这个错误:
...
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':app:preDebugBuild'.
> Android dependency 'com.google.android.exoplayer:exoplayer' has different version for the compile (r2.1.0) and runtime (2.9.1) classpath.
You should manually set the same version via DependencyResolution
...
我该怎么办?请帮我 。谢谢
【问题讨论】:
【参考方案1】:运行 > gradlew androidDependencies 命令。使用 control + F 可以查找冲突的子依赖项,从而发现它属于哪个直接依赖项。
【讨论】:
以上是关于Android 依赖 'com.google.android.exoplayer:exoplayer' 有不同版本的编译(r2.1.0)和运行时(2.9.1)类路径的主要内容,如果未能解决你的问题,请参考以下文章
为啥 Localytics 需要 google-play-services:ads?
可以在内部测试轨道上测试 Google Play 游戏服务吗?
Android Gradle 插件Android 依赖管理 ⑥ ( 依赖冲突处理 | transitive 依赖传递设置 | exclude 依赖排除设置 | force 强制指定依赖库 )
Android Gradle 插件Android 依赖管理 ④ ( 常用依赖配置分析 | implementation 依赖作用 | api 依赖作用 | compileOnly 依赖作用 )