我在尝试构建我的phonegap项目时遇到此错误
到目前为止,我知道这个错误,因为在项目中有两个库设置。 我检查了所有的库,我发现只有一个库导致这个(在我的一个插件中找到)
<framework src="com.android.support:design:23.4.0"/>
问题是,我可以在plugin.xml文件中设置排除模块规则吗? 我想我需要排除com.android.supportv4
答案 0 :(得分:3)
最后我解决了这个问题,我不得不在我的插件中创建一个build-extras.gradle文件,其中包含以下几行:
configurations {
all*.exclude group: 'com.android.support', module: 'support-v4'
all*.exclude group: 'com.android.support', module: 'support-annotations'}
然后需要使用以下命令在plugin.xml文件中导入此gradle文件:
<framework src="build-extras.gradle" custom="true" type="gradleReference" />
答案 1 :(得分:0)
我强烈推荐https://github.com/dpa99c/cordova-android-support-gradle-release这是一个&#34;插件,用于调整其他插件指定的各种版本的Android支持库&#34;。
他们使用clever gradle dependency resolution来解决问题:
configurations.all {
resolutionStrategy.eachDependency { DependencyResolveDetails details ->
if (details.requested.group in ['com.android.support'] && !(details.requested.name in ['multidex', 'multidex-instrumentation'])) { details.useVersion "26.1.0"}
}
}
这可以避免移除所有 Android支持库的问题,这可能导致插件缺少依赖性/失败的gradle同步。