【问题标题】:Android Studio gradle sync, try to download jar instead of aar by mistakeAndroid Studio gradle 同步,尝试下载jar而不是aar
【发布时间】:2015-08-26 02:51:21
【问题描述】:

我正在使用 Android Studio 1.4 预览版 3,gradle 插件 1.3。 你好,我上传了一个 aar 包到 bintray jcenter:

https://bintray.com/kevinho/maven/opencore-amr-android/view

我设置了这样的存储库:

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:1.3.0'
        classpath 'com.jfrog.bintray.gradle:gradle-bintray-plugin:1.2'
        classpath 'com.github.dcendents:android-maven-gradle-plugin:1.3'
    }
}

allprojects {
    repositories {
        jcenter()
    }
}

当我尝试将其用作依赖项时,

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.hikvh:opencore-amr-android:1.0.0'
}

我收到以下错误:

错误:配置项目 ':app' 时出现问题。 找不到 opencore-amr-android.jar (com.hikvh:opencore-amr-android:1.0.0)。在以下搜索 地点: https://jcenter.bintray.com/com/hikvh/opencore-amr-android/1.0.0/opencore-amr-android-1.0.0.jar

我的问题是: 为什么gradle默认尝试加载jar而不是aar文件? 以及如何解决这个问题?

【问题讨论】:

    标签: android maven android-studio gradle


    【解决方案1】:

    您需要告诉 Gradle 您正在尝试引用 AAR,而不是 JAR。

    替换

    compile 'com.hikvh:opencore-amr-android:1.0.0'

    compile 'com.hikvh:opencore-amr-android:1.0.0@aar'
    

    希望对你有帮助。

    【讨论】:

    • 是多余的,gradle下载aar没有问题
    • 嗨,@jmvk,您是否尝试在 build.gradle 中添加依赖项?compile 'com.hikvh:opencore-amr-android:1.0.0'?它奏效了吗?你可以参考我的lib:bintray.com/kevinho/maven/opencore-amr-android/view,确实是aar包
    • 嗨凯文。不,没有尝试抱歉,我在旅途中写了回复。
    • 此解决方案有效,并且比其他与清理 gradle 缓存相关的解决方案更简单。
    【解决方案2】:

    您的依赖项正在正确加载为 aar。
    当您尝试下载它时,JCenter 可能尚未发布该库。

    让我们尝试删除 gradle 缓存。
    1) 确保您的依赖项中有 compile 'com.hikvh:opencore-amr-android:1.0.0'
    2) 从您的主目录rm -rf ~/.gradle/caches
    3) 来自您的项目根rm -rf .gradle
    4)从项目./gradlew assemble运行gradlew

    【讨论】:

    • 我发现它没有检查,我应该检查这个吗?如果我这样做会发生什么?
    • @KevinHe 这意味着——离线工作,不要加载新的依赖项。我编辑了我的答案,尝试清理 gradle 缓存
    • 成功了!我尝试删除所有缓存,成功了!
    • 这不能可靠地工作。我有两个 aar 文件的导入,一个在没有“@aar”的情况下工作,另一个需要“@aar”或者它尝试加载一个 jar 文件。
    【解决方案3】:

    对我来说,这是 Android Studio 环境的配置问题。

    当我将 File -> Project Structure -> JDK Location 更新到更高的 Java 版本(jdk1.8.0_192.jdk - 对我来说)时,一切都开始工作了。

    注意:如果您关注Stas Parshinanswer(感谢您!)-./gradlew 使用的 shell 的 JAVA_HOME 之间仍然可能存在差异以及在您的 Android Studio 中配置的那个。

    【讨论】:

      猜你喜欢
      • 2015-09-13
      • 1970-01-01
      • 1970-01-01
      • 2020-11-25
      • 1970-01-01
      • 2018-12-06
      • 2021-10-26
      • 2021-02-20
      • 1970-01-01
      相关资源
      最近更新 更多