android 传递依赖问题 5C

A中的builde.gradle 依赖 B 库 , 而B库 中的builde.gradle 与 A 中的builde.gradle 有5行相同的依赖,我把A中相同的依赖删掉。然后开始编译,A中的类就报错了,出现找不到刚刚删除的依赖。

5个回答

没必要删除依赖, 改一下模型吧

clean project

可以抽取共有的模块comonmodel,然后把相同的依赖包转移到公共模块中,让AB两个模块共同依赖commonmodel

删除B相同的依赖,不要删除A中的依赖

可以在module的gradle中加入以下代码
compile('com.android.support:recyclerview-v7:26+') { // 如果你的B中增加了26以下的这个依赖,你A中需要26及以上
exclude group: 'com.android.support' //exclude 可以解决 lib冲突的问题。
}

    在project的gradle中添加
    buildscript {
      repositories {
    jcenter()
}
dependencies {
    classpath 'com.android.tools.build:gradle:3.0.0'
}
    }
    ext.support_version = "26.+" // 解决第三方库冲突

    希望能帮到你
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
android多模块依赖传递
这几天在搞多模块化,使用android studio 3.1.3时候出现一个问题: app 依赖 module A(类型android library),module A又依赖module B(类型android library),在module B中创建工具类想在app中调用;结果发现app中调用不了 原因: implementation和api是替代compile的,但是implementa...
Maven依赖传递、依赖传递排除、依赖冲突问题
一、Maven依赖传递    假如有Maven项目A,项目B依赖A,项目C依赖B。那么我们可以说 C依赖A。也就是说,依赖的关系为:C—>B—>A。    那么我们执行项目C时,会自动把B、A都下载导入到C项目的jar包文件夹中。    这就是依赖的传递性。 二、依赖传递的排除    如上,C—>B—>A。加入现在不想执行C时把A下载进来,那么我们可以用 <exclu...
依赖传递
依赖类型 类型 描述 示例 项目依赖 依赖其他gradle项目 文件依赖 依赖文件系统中的一系列文件 客户端模块依赖 依赖仓库中的外部类库,具有生命原数据的能力 gradle运行时依赖 依赖gradle api 或者封装的gradle运行时类库 依赖标记 dependencies{ compile "com.android.support:a
传递依赖
-------------------siwuxie095                         传递依赖       1、假设有项目 A:A 依赖于 B,B 依赖于 C,即 A->B->C,则:    (1)B 是 A 的直接依赖(也称为 第一直接依赖)    (2)C 是 B 的直接依赖(也称为 第二直接依赖)    (3)C 是 A 的传递依
有关android依赖传递冲突的解决方案
解释下概念 依赖传递:通常情况下,依赖本身也有依赖。比如Hibernate核心库就依赖一些其他类库。当Gradle测试你工程的时候,它也需要找到这些间接依赖。我们称之为“传递依赖”( transitive dependencies). module,group, version(解释仅限后面用到的范围):通过例子解释更好理解。 dependencies { comp
Maven的依赖-硬依赖,传递依赖,依赖排除(NEW)
 依赖的查询 http://mvnrepository.com/ http://www.sonatype.org/nexus/      硬依赖 指的就是必须由本模块来引入的依赖 传递依赖 当引入其它模块时,由于其它模块中已经有了某些jar包的依赖了,将自动把依赖关系导入到本模块 如,A模块已经配置了对hibernate的依赖, 当B模块中引入A模块的依赖时,hibernate...
maven依赖传递的实例
在eclipse中新建三个maven project 分别是A B C; 注意:这里将jdk版本与实际的jdk版本同步一下,在pom.xml中的profiles中新增如下内容: <profile> <id>jdk-1.8</id> <activation> <activeByDefault>true</activ...
maven依赖传递关系
一、maven 依赖传递规则 举个例子,比如A依赖B,B依赖C,那么A也是依赖C的。A是对B的直接依赖,A对C是传递依赖 ①、最短路劲原则 如,路劲一:A依赖B,B依赖C,C依赖D(1.0.0);   路劲二:A依赖E,E依赖D(2.0.0), 此时A间接依赖D版本是2.0.0! ②、最先定义原则 如,路劲一:A依赖B,B依赖C(1.0.0);   路劲二:A依赖E,E依赖C(2.
Maven依赖传递
新建mavenA项目,pom.xml配置如下:   xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">   4.0.0   com.cn.maven1   A   0.0.1-SNAPSHOT   jar   A   htt
Maven传递依赖的原则
maven引入的传递性依赖机制,一方面大大简化和方便了依赖声明,大部分情况下我们只需要关心项目的直接依赖是什么,而不永哥你考虑这些直接依赖会引入什么传递性依赖。但有时候,当歘地形依赖造成问题时,我们就需要清除知道该传递性依赖是从哪条依赖路径引入的。 如下示例: 1.依赖同一个jar包,深度不同: A->B->C->X(1.0)   依赖深度为3 A->D->X(2.0)   依赖深度为2
maven传递依赖的排除
  A依赖B,B依赖C,A需排除B中的C(例如重复依赖A已有C)可以使用exclusions          <!-- 依赖jar-->     <dependencies>         <dependency>             <artifactId>bank-mapper</artifactId> ...
maven依赖传递和冲突解决
1. 传递依赖:A依赖于B,而B依赖于C,那么C就可以称为A的传递依赖。        * 例如:项目依赖于struts的jar包,而struts又依赖xwork的jar包,并且xwork这些jar包也出现在了项目中,这种现象称为传递依赖。        2. 传递依赖冲突        * 使用maven创建web项目,引入struts-spring-plugin的插件坐标,再引入spring-...
maven2+依赖传递
源文章:https://blog.csdn.net/honghai... 传递性依赖 传递性依赖是在maven2中添加的新特征,这个特征的作用就是你不需要考虑你依赖的库文件所需要依赖的库文件,能够将依赖模块的依赖自动的引入。例如我们依赖于spring的库文件,但是spring本身也有依赖,如果没有传递性依赖那就需要我们了解spring项目...
Maven 传递依赖
依赖是会被传递      A-->C B-->A ==>B-->C(这种依赖是基于compile这个范围进行传递)      在dependency配置中如果没有写scope默认就是compile范围,依赖的传递主要是针对compile作用域      依赖的范围:          test范围指的是测试范围有效,在编译和打包时都不会使用这个依赖       ...
Maven构建之依赖传递
如果断Maven的依赖构建必须每一个项目都指定,那配置是累死人了,比如A依赖了20个项目,B依赖A,那么还要添加20个项目,那就悲剧了,maven有依赖传递的功能。 1、Transitive Dependency (传递依赖) 你的项目依赖于A,A又依赖于B。你的项目是否要声明你依赖于B? Maven的回答是它帮你自动管理这种依赖的传递,你不需要声明你依赖于B,由Maven来做。 [版本还是...
maven传递依赖冲突解决
  传递依赖: A.jar 依赖 B.jar, B.jar 依赖 C.jar, 这个时候我们就说B是A的直接依赖, C是A传递依赖; 传递依赖可能会产生冲突: 联系着上面, 新导入一个jar包D.jar, D依赖C.jar, 但是B依赖的1.1版本, 而D依赖的是1.2版本, 这时候C这个jar包的两个版本, 如果同时被Maven导入工程, 冲突就出现了!   针对这种冲突 一: Mav...
传递依赖冲突解决
jarA依赖于B,B依赖于C(1.1版本),则C称为A的传递依赖,B是A的直接依赖;如果D依赖C(1.2版本),此时便产生了传递依赖冲突。如下图所示。 Maven对于传递依赖冲突有自己的解决办法 1、采用第一声明者优先的原则,即在pom文件中,采用先声明的jar的依赖。 2、直接依赖级别高于传递依赖。优先采用直接定义的依赖。 排除依赖 版本锁定 指定项目中依赖的版本,d...
5.Maven依赖传递
maven依赖传递 依赖传递:分为①jar包依赖传递 ②scope范围依赖传递 上图解析:上图是一种相对比较好的工程架构图。即:一个工程包括report-data,report-dao,report-charts,report0-web,common-lib五个模块,每个模块都有自己单独的子pom;图中srpingmvc即代表父pom。结构就是:①comm...
maven的依赖传递(二)
maven中jar包的依赖与传递
Maven 依赖范围及依赖传递
1. 依赖范围 scope 共 5 种依赖范围 , compile (编译) , test (测试) , runtime (运行时) , provided , system 不指定 , 则依赖范围默认为 compile compile : (编译依赖范围) , 在编译 , 测试 , 运行/打包时都会使用这个依赖 test : (测试依赖范围) , 测试时会使用 , 编译 和 运行/打包 不
依赖传递与scope
使用maven创建了 parent父工程 定义依赖版本号 版本号 junit junit ${junit.version} test common工具类jar(继承父) junit junit sub子工程(继承父,并依赖common) sub自工程模块中没有junit的jar包依赖到木块中。 原因:te
MAVEN依赖传递
Maven下载安装及环境搭建,Mave创建控制台小程序,MAVEN常用命令详解,MAVEN依赖范围,依赖传递,依赖继承,聚合,.MAVEN整合SSH。
maven传递依赖
Maven传递依赖 依赖的传递性。通过依赖设置解决了项目的CLASSPATH 问题,实际情况是我们依赖的项目其本身也是依赖其他的项目的, 如我依赖commons-email,而commons-email 需要依赖JavaMail 和JAF,这个时候,Maven 会自动处理这个依赖传递,会将JavaMail 和JAF 也会加入到CLASSPATH 中,通过这种传递地址,可以确保依赖的完整性,...
maven的依赖传递
maven2提供了强大的依赖传递管理。 传递依赖的意思简单的理解为A->B-C,则在A的pom中不必声明对C的依赖,maven会自动进行依赖传递。 当依赖传递有环时为错误。 传递依赖是没有数量限制的,所以其依赖的pom数量会急剧增大。所以有以下功能来调整。 依赖调停: 当有多个artifact出现在依赖传递中时,决定用哪个版本。maven2支持最近定义,如A->B->...
Maven的传递依赖
Maven的传递依赖 1.1什么是传递依赖        当A 依赖B、B依赖C,在A中导入B后会自动导入C,C是A的传递依赖,如果C依赖D则D也可能是A的传递依赖。 1.2依赖版本冲突解决 1.2.1什么是依赖版本冲突        当一个项目依赖的构件比较多时,它们相互之前存在依赖,当你需要对依赖版本统一管理时如果让maven自动来处理可能并不能如你所愿。 1.2.2依赖调解原则 ...
mavn的传递依赖优化
https://blog.csdn.net/limm33/article/details/70216371通过不同的依赖分析找到多余的代码,进行排除
关于Maven的依赖传递
Maven的强大之一在于依赖管理 有的时候Maven的依赖传递也会给我们带来一些问题 刚好有看到依赖传递的一些东西,于是乎自己参照文档以及一些资料做了部分尝试 1、有关于dependence中optional元素 官方的文档是这么说明的: optional: Marks optional a dependency when this project itself i
maven 传递依赖
依赖范围影响传递性依赖(左边第一行标示第一直接依赖范围,对上面第一行标示第二直接依赖范围,中间的交叉单元格标示传递性依赖范围)   compile test provided runtime compile compile --- --- runtime test test --- --- ...
Maven移除传递依赖
之前有写过一篇文章https://blog.csdn.net/xb12369/article/details/80066094 关于日志jar三者不能共存的问题,现在知道后每次发版的时候需要手动排除掉多余的jar,这个很费劲呐!!!单依赖过滤现在一劳永逸的方法,直接在pom.xml中排除掉多余的jar;目前有两个节点都有对logback的依赖:<dependency> <g...
Maven 传递依赖和冲突解决
一. 什么是传递依赖 冲突 A 依赖B, 引入A的时候也引入B 冲突: A依赖了B ,C 依赖B 二. 自带调优原则 a, 第一声明者优先 b, 路径近者优先 三. 排除依赖(方式一) 四. 方式二.锁定版本(推荐) 1, 提取版本号 <properties> <maven.compiler.target>1.7</maven.compiler.target&g...
maven的传递依赖
如有3个工程, projectA依赖projectB, projectB依赖projectC, 则projectA传递依赖projectC, 这时在projectA下的类可以直接访问projectC下的类rn问题是projectA不是直接依赖projectC, 而projectA的代码耦合projectC, 感觉不是很好, maven工程为什么允许这样呢. 求解. 谢谢
maven 依赖传递和版本冲突
这里是修真院后端小课堂,每篇分享文从 【背景介绍】【知识剖析】【常见问题】【解决方案】【编码实战】【扩展思考】【更多讨论】【参考文献】 八个方面深度解析后端知识/技能,本篇分享的是: 【 maven 依赖传递和版本冲突】 大家好,我是IT修真院北京分院第22期的学员童志荣,一枚正直纯洁善良的java程序员。 maven依赖传递和版本冲突的解决_腾讯视频 PPT戳这里 一、背...
Maven依赖范围及依赖传递
一: 依赖范围scope 共5种,compile (编译)、test (测试)、runtime (运行时)、provided、system。不指定,则依赖范围默认为compile. compile:编译依赖范围,在编译,测试,运行时都需要。 test: 测试依赖范围,测试时需要。编译和运行不需要。如Junit runtime: 运行时依赖范围,测试和运行时需要。编译不需要。如JDBC驱动包...
【Maven】——传递依赖
若无传递依赖,当A需要依赖B,而B需要依赖C,则A需要引入C,才能保证不出错。这就需要我们不仅考虑当前需要引用什么jar包,还要考虑引用的jar包需要依赖什么,这样就容易导致因缺少jar包而报错,或引用了多余的无用jar包......现有了Maven的传递依赖,我们便不用考虑B的依赖,也不用担心引入了多余的依赖。Maven会解析各个直接依赖的POM,将那些必要的间接依赖,以传递依赖的形式引入到当前的项目中。
传递依赖的范围
----------------------siwuxie095                         传递依赖的范围       1、假设有项目 A:A 依赖于 B,B 依赖于 C,即 A->B->C,则:    (1)B 是 A 的直接依赖(也称为 第一直接依赖)    (2)C 是 B 的直接依赖(也称为 第二直接依赖)    (3)C 是
gradle中的依赖传递
依赖中的传递依赖怎么去除?1、查看依赖树./gradlew app:dependencies 如果提示zsh: permission denied: ./gradlew 错误,可以输入:chmod +x gradlew 2、可以通过在gradle中配置,去除依赖compile('com.android.support:appcompat-v7') { force = true // 冲突时
Maven中的依赖传递
Maven中的依赖传递简要解释
Maven -- 依赖传递
简单理解:A 依赖 B ,B 依赖 C ,那么A 依赖传递 C。 理论参考: http://m.blog.csdn.net/article/details?id=50612701最左边一行表示第一直接依赖范围,最上面一行表示第二直接依赖范围,中间的交叉单元格则表示传递性依赖范围。 当第二直接依赖的范围是compile的时候,传递性依赖的范围与第一直接依赖的范围一致; 当第二直接依赖的范围是tes
maven依赖传递
一 传递依赖实例 nage依赖于bge,shanji依赖于nage   bge的pom.xml文件 project xmlns="http://maven.apache.org/POM/4.0.0"; xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";   xsi:schemaLocation="http://maven.a
Android Studio3.0依赖问题
![图片说明](https://img-ask.csdn.net/upload/201712/22/1513931805_66639.png)n打开那个链接是这样的n![图片说明](https://img-ask.csdn.net/upload/201712/22/1513931857_923817.png)nnn```n Unable to resolve dependency for ':app@release/compileClasspath': Could not resolve com.android.support:appcompat-v7:26.1.0.nnCould not resolve com.android.support:appcompat-v7:26.1.0.nRequired by:n project :appn > Could not resolve com.android.support:appcompat-v7:26.1.0.n > Could not get resource 'https://jcenter.bintray.com/com/android/support/appcompat-v7/26.1.0/appcompat-v7-26.1.0.pom'.n > Could not GET 'https://jcenter.bintray.com/com/android/support/appcompat-v7/26.1.0/appcompat-v7-26.1.0.pom'.n > Server sent an unsupported extension: type_35n```nn
相关热词 c# 标准差 计算 c#siki第五季 c#入门推荐书 c# 解码海康数据流 c# xml的遍历循环 c# 取 查看源码没有的 c#解决高并发 委托 c#日期转化为字符串 c# 显示问号 c# 字典对象池