为什么lib模块中的依赖定义在app模块中不可见?

时间:2017-11-30 20:10:45

标签: android android-gradle

我有一个Android应用程序。它包含两个apppax-lib模块。 app模块取决于pax-lib模块。

libs下的pax-lib文件夹包含一些jar文件。我已将它们链接到此模块的gradle文件,并在此模块中使用它,没有任何问题。这就是我定义它们的方式:

dependencies {
    ...

    // Local libs not in Maven Central
    implementation files('libs/commons-io-1.3.2.jar')
    implementation files('libs/commons-lang3-3.2.1.jar')
    implementation files('libs/httpclientandroidlib-4.3.0.jar')
    implementation files('libs/Kahuna_442.jar')
    implementation files('libs/mapquest-android-sdk-1.0.5.jar')

    ...
}

这是我在app模块的gradle文件中定义此依赖项的方法。

dependencies {
    implementation project(':pax-lib')

    ...
}

我可以使用我在pax-lib中定义的所有类没有任何问题,但是,我无法使用在pax-lib模块的Gradle文件中定义的.jar文件。我的期望是能够使用它们,因为我在Gradle版本3.0以下。

我必须能够在app模块下复制/粘贴这些jar文件,但我想先确保我没有做错。

1 个答案:

答案 0 :(得分:0)

使用api而不是implementation