有一个库,即io.github.elye: simplekotlinLibrary
,版本1.0.0, 2.0.0和3.0.0。
io。github。elye:easyandroidlibrary:1.0.0包含io。github。elye:simplekotlinlibrary:1.0.0
io。github。elye:simpleandroidlibrary:2.0.0包含io。github。elye:simplekotlinlibrary:2.0.0
所以在我的Gradle里,如果我有
implementation ('io.github.elye:easyandroidlibrary:1.0.0')
implementation ('io.github.elye:simpleandroidlibrary:2.0.0')
implementation ('io.github.elye:simplekotlinlibrary:3.0.0')
它将自动解析为项目的io.github.elye: simplekotlinLibrary: 3.0.0
,包括传递依赖项。
但是,对于https://docs.gradle.org/current/userguide/dependency_constraints.html#sec: adding-约束-传递-deps,它声明约束
还强制将依赖项升级到指定的版本3.0.0
。
implementation ('io.github.elye:easyandroidlibrary:1.0.0')
implementation ('io.github.elye:simpleandroidlibrary:2.0.0')
implementation ('io.github.elye:simplekotlinlibrary')
constraints {
implementation('io.github.elye:simplekotlinlibrary:3.0.0') {
because 'testing force upgrade'
}
}
根据我的理解,以上两个例子将产生相同的结果。似乎约束没有实际用途?约束与差异自相关性解决方案有何不同?
我认为在上面的例子中,它们是相同的。
但是,如果顶级项目不需要io。github。elye:simplekotlinlibrary,使用约束,仍然可以强制所有可传递依赖项至少达到约束所指示的版本,如下所示。
implementation ('io.github.elye:easyandroidlibrary:1.0.0')
implementation ('io.github.elye:simpleandroidlibrary:2.0.0')
constraints {
implementation('io.github.elye:simplekotlinlibrary:3.0.0') {
because 'testing force upgrade'
}
}
可在此处找到进一步的详细说明
虽然我看到两个不同的帖子与此错误消息没有任何关系: 错误:(25,17)无法解析:org.mockito:mockito-core:1.10.19 我尝试使用compile、androidTestCompile和testCompile更改Mockito依赖项,并在全局Gradle文件中尝试添加Maven作为存储库,但没有成功。 编辑:我正在使用Android Studio 2.1 这是我的应用程序
在使用Gradle构建的一个简单的Spring Java项目中,我使用io.Spring.dependency-management应用BOM,该BOM应该在全局指定依赖版本。 现在在BOM中,我已经覆盖了jackson-databind(2.9.5)的默认版本,从Spring Boot2.0.2.Release到2.9.10.4版本。 我在dependencyManagement部分指定了这个B
失败:生成失败,出现异常。 > 出错原因:任务“:compiledebug”执行失败。 找不到系统Java编译器。确保您已经安装了JDK(而不仅仅是JRE),并将JAVA_HOME系统变量配置为指向fight目录。 编辑3: 再一次,Android Studio在编译我的项目时失败了。现在它停在。当我尝试用gradle通过命令行编译时,它没有任何错误...天哪,我恨格雷德尔!
最近,我更新了Android Studio和 SDK。在重建我的应用程序项目时,我遇到以下错误... > < li> 哪里出错:配置项目时出现问题:app。 无法解析配置“:app:_debugCompile”的所有依赖项。找不到技术支持:appcompat-v7:23.0.0.在以下位置搜索:https://jcenter.bintray.com/com/android/support/appc
问题是gradle找不到依赖项的jar,但gradle找错了地方。Gradle一直在错误的目录(谷歌和Android支持libary的目录)中搜索文件.... 在以下位置搜索:文件:/d://programme/androis-sdks/extras/android/m2repository/org/springframework/android/spring-android-rest-templ