我试图在我的lib项目中使用新的gradle命令,但是出了点问题。
我的lib项目已上传到bintray,之后将在其他应用程序中使用,它具有多个子依赖项(例如gson和commons编解码器)。 (在实现/ api之前)老了,在将lib集成到应用程序中时正确地看到并下载了这些子依赖项。
命令gradlew :app:dependencies给出了结果

[...]
+--- com.test:my_lib:2.4.0.4
|    +--- commons-codec:commons-codec:1.6
|    +--- com.google.code.gson:gson:2.8.0
[...]

但是,当我使用implementationapi时,子依赖性似乎被忽略,如果我没有手动添加所有必需的库,则会在应用程序中引起问题。
我不想这样做,因为此库也将在我公司之外使用,并且我们不希望它难以实现。

使用compile命令仍然可以使用,因此在此期间我仍在这样做,但是我不想继续使用过时的函数,因为它以后可能会引起问题。

-编辑:
我在Android Studio的Project View 中查看了下载库,所有子依赖项都在那里。它们被下载,但是gradle不能将它们链接到我的库。

最佳答案

用这个
gradlew -q dependencies app:dependencies --configuration debugAndroidTestCompileClasspath

关于android - Gradle实现/API没有获得子依赖项,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48223698/

10-10 17:12