【问题标题】:Jenkins unable to find com.android.support:support-v4:27.1.1詹金斯找不到 com.android.support:support-v4:27.1.1
【发布时间】:2019-01-24 01:45:50
【问题描述】:

我正在尝试在一个新的 Jenkins 工作中构建我的项目,我正在将依赖项更新到 Android API-27。不过,我总是收到以下错误:

:smartconnectapilibrary:compileDebugAidl 将任务 ':smartconnectapilibrary:compileDebugAidl' 的任务工件状态放入上下文需要 0.0 秒。 为 metadata-2.23/artifact-at-url 创建新缓存,路径 /Users/jenkins/.gradle/caches/modules-2/metadata-2.23/artifact-at-url.bin,访问 org.gradle.cache.internal。 DefaultCacheAccess@100205c4 资源缺失。 [HTTP 头:https://jcenter.bintray.com/com/android/support/support-v4/27.1.1/support-v4-27.1.1.pom] 资源缺失。 [HTTP 头:https://jcenter.bintray.com/com/android/support/support-v4/27.1.1/support-v4-27.1.1.jar] :smartconnectapilibrary:compileDebugAidl 失败 :smartconnectapilibrary:compileDebugAidl (Thread[Task worker for ':' Thread 4,5,main]) 完成。耗时 0.612 秒。

FAILURE:构建失败并出现异常。

我已将两个条目都更新为 compileSdkVersion 27buildToolsVersion '27.0.3',并在 repositories 部分添加了 google()

我也读过,可能 Jenkins 忽略了 google() 存储库,所以它永远找不到依赖关系 com.android.support:support-v4:27.1.1

此外,这是一个复合项目(一个主模块和两个库模块),每个模块都有自己的 gradle 文件。在他们每个人中,我在jcenter() 之前已经有google(),但我仍然有这个问题,我认为这可能是Gradle 堆叠gradle 文件的方式。

有人知道解决办法吗?

更新

我看到出于某种原因,Gradle 正在/jenkins/Library/Android/sdk/extras/ 中寻找com.android.support:support-v4:27.1.1 而不是 /jenkins/.gradle/caches/modules-2/files-2.1/

  • 出了什么问题: 无法解析配置 ':fisherpriceapilibrary:debugCompileClasspath' 的所有文件。 找不到 com.android.support:support-v4:27.1.1。 在以下位置搜索: 文件:/Users/jenkins/Library/Android/sdk/extras/m2repository/com/android/support/support-v4/27.1.1/support-v4-27.1.1.pom 文件:/Users/jenkins/Library/Android/sdk/extras/m2repository/com/android/support/support-v4/27.1.1/support-v4-27.1.1.jar 文件:/Users/jenkins/Library/Android/sdk/extras/google/m2repository/com/android/support/support-v4/27.1.1/support-v4-27.1.1.pom 文件:/Users/jenkins/Library/Android/sdk/extras/google/m2repository/com/android/support/support-v4/27.1.1/support-v4-27.1.1.jar 文件:/Users/jenkins/Library/Android/sdk/extras/android/m2repository/com/android/support/support-v4/27.1.1/support-v4-27.1.1.pom 文件:/Users/jenkins/Library/Android/sdk/extras/android/m2repository/com/android/support/support-v4/27.1.1/support-v4-27.1.1.jar
    https://jcenter.bintray.com/com/android/support/support-v4/27.1.1/support-v4-27.1.1.pom https://jcenter.bintray.com/com/android/support/support-v4/27.1.1/support-v4-27.1.1.jar 要求: 项目:smartconnectapilibrary > 项目:someapilibrary

【问题讨论】:

  • 能否提供build.gradle文件?
  • 您是否将这个maven { url "https://maven.google.com" } 添加到所有项目存储库中。
  • @FaysalAhmed 是的,我添加了google(),这与maven { url "https://maven.google.com" } 相同...实际上我都尝试过。这不仅仅是一个build.gradle 文件,它们是多个文件,因为这是一个复合项目。

标签: android jenkins gradle


【解决方案1】:

这听起来可能有点好笑,但这是过去 Jenkins 和 Android 项目的问题。

出于一些奇怪的原因,您必须优先考虑要在 build.gradle 中查看的存储库。我说,这不是解决这个问题的好方法,但这肯定会奏效。两天前我也遇到了同样的问题。

请看这里的答案:Failed to resolve: play-services-flags

【讨论】:

  • @VighneshPal 谢谢你的回答。我很确定我的问题与此有关。无论如何,这是一个复合项目(一个主模块和两个库模块),每个模块都有自己的 gradle 文件。在他们每个人中,我在jcenter() 之前已经有google(),但我仍然有这个问题,我认为这妨碍了这些gradles 如何相互堆叠。我会更新问题。
  • 最后,问题是我需要将 google() 放在每个子项目的 jcenter() 存储库之上。子项目没有显示 Android Studio 中根目录的 Gradle 文件,所以我在第一个实例上还没有弄清楚。
猜你喜欢
  • 2018-10-19
  • 2012-09-30
  • 2014-07-24
  • 2018-02-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多