我试图导入一个项目(projLib)作为另一个项目(projAPK)的依赖项。

projAPK gradle具有:

dependencies {
    compile project(':libs:NewsAPI')
    compile project(':projLib')
}

但是当我同步gradle时会出现此错误:



所以我想有两种解决方案:
  • 以某种方式使gradle认为projLib是不应编译为apk
  • 的库
  • 以某种方式使gradle不显式编译projLib

  • 问题是,我找不到任何方法。
    如果你们能帮助的话,那将是很棒的:)

    最佳答案

    projLib 的build.gradle文件中,您将看到类似以下的语句:

    apply plugin: 'com.android.application'
    

    告诉Gradle将其构建为应用程序,并生成APK。如果将其更改为此:
    apply plugin: 'com.android.library'
    

    它会作为一个库构建,生成一个AAR,并且它应该可以工作。

    如果您还需要 projLib 来生成一个单独的APK,则必须进行一些重构以将所需的通用代码提取到第三个库模块中,并使两个APK都依赖于它。

    不允许库设置applicationId,因此,如果您看到这样的错误消息,请从库的构建脚本中将其删除。

    09-28 10:26