如何分发我的Android库没有依赖和冲突?

时间:2016-04-04 16:19:56

标签: android maven android-library

我们开发了一个Android库,现在,我们正在努力实现分发它的最佳形式。这个库有很多第三方依赖,比如Retrofit 2,Dagger 2等等。此外,应用程序的每一层(演示文稿,域,数据)都是Android项目中的独立模块。我们在Jitpack发布我们的库。

我们已尝试将此库集成到所有类型的项目中,但始终存在冲突。例如,如果项目很古老,则Android支持库存在冲突。以同样的方式是一个有匕首1的项目。

我们尝试了Gradle Dependency Management page的示例,例如'force','exclude'或'substitute',但它不起作用。

现在,我们尝试使用Gradle修改pom文件,如下所示:

install {
  repositories.mavenInstaller {
    pom.whenConfigured {pom ->
      pom.dependencies.each { dep ->
        if (dep.groupId == 'me.dm7.barcodescanner' && dep.artifactId == 'zbar' ) {
          dep.optional = true
        }
      }
    }
  }
}

我们正在修改pom文件,因为我们已经看到毕加索库在集成时有no dependencies。但我们不知道如何实现它。我们认为它是可选标志,但我们不确定以及如何实现这一目标。有人可以解释一下吗?

在任何应用中集成此库时,分发Android库并避免冲突的最佳方法是什么?

0 个答案:

没有答案