无法将类从jcenter aar依赖关系导入Android Studio 3.1.3中的通用jar模块

时间:2018-08-02 05:23:31

标签: android gradle android-studio-3.0 aar

我正在尝试将RxVolley库包含到Android Studio 3.1.3中的多操作系统引擎应用程序中。

我打算在一个公共jar文件中使用reactx和rxvolley进行后端通信。为此,我将以下内容添加到了jar文件的build.gradle文件中:

dependencies {
  implementation fileTree(include: ['*.jar'], dir: 'libs')
  implementation 'com.kymjs.rxvolley:rxvolley:1.1.4'
  implementation 'com.kymjs.rxvolley:okhttp3:1.1.4'
  implementation 'io.reactivex:rxjava:1.3.8'
}

在我的课堂上,我的要求包括:

RxVolley.Builder()
    ...
    ;

不幸的是,Android Studio报告RxVolley为未解决的符号。通常,这不是问题。但是,在这种情况下,无法从上下文相关的弹出菜单中选择“导入RxVolley”。

我对此进行了深入研究,发现该库已作为aar文件添加到我的计算机的.gradle / ... / ...文件夹中。

同一aar文件也出现在我的应用程序的“外部依赖关系”中(以及rxandroid和okhttp3的其他aar文件。

进一步的调查表明,我无法使用gradle构建文件中包含的这些aar文件中的任何类(与下载aar文件并将其添加为本地文件并将它们用作应用程序的其他模块相反。< / p>

由于我添加到Gradle的任何jar文件都不会发生这种情况,所以我只能认为这是处理将aar文件作为依赖项拉入的问题。

是否有一种特殊的技巧可以使mavenCentral或jcenter中的aar文件在Android Studio 3.1.3中工作?


响应对应用程序级别Gradle文件的请求:

buildscript {

  repositories {
    google()
    jcenter()
  }

  dependencies {
    classpath 'com.android.tools.build:gradle:3.1.3'

    // NOTE: Do not place your application dependencies here; they         
    // belong in the individual module build.gradle files
  }
}

allprojects {
  repositories {
    google()
    jcenter()
  }
}

task clean(type: Delete) {
  delete rootProject.buildDir
}

这也是模块Gradle文件:

plugins {
  id 'io.franzbecker.gradle-lombok' version '1.14'
  id 'java'
}

apply plugin: 'java-library'

dependencies {
  implementation fileTree(include: ['*.jar'], dir: 'libs')

  implementation 'com.kymjs.rxvolley:rxvolley:1.1.4'
  implementation 'com.kymjs.rxvolley:okhttp3:1.1.4'
  implementation 'io.reactivex:rxjava:1.3.8'
}

lombok {
  version = "1.18.0"
  sha256 = ""
}

sourceCompatibility = "1.8"
targetCompatibility = "1.8"

0 个答案:

没有答案