本地模块
这是大多数 Gradle 项目遵循的模式,其中有一个库,然后是一个使用该库的示例应用程序 -参考 Gradle 文档 https://docs.gradle.org/current/userguide/multi_project_builds.html#sec:adding_subprojects
- app/
- build.gradle
- src/main/java # where your main class would be
- library/
- build.gradle
- src/main/java # dependencies of the app module
- settings.gradle
- build.gradle
在那个顶层settings.gradle
你有
include ':library', ':app'
并且在app/build.gradle
,您编译包含的项目
dependencies {
compile project(':library')
}
基本上都是顶级的build.gradle
,是子项目和变量的所有常见配置的包装。例如,它最常用于repositories { }
例如,Maven url 部分。有关详细信息,请访问Gradle - 多项目构建 https://docs.gradle.org/current/userguide/multi_project_builds.html
远程模块
上面的内容对于本地工作来说很好,但是假设您想与许多其他开发人员共享您的存储库,而不会让他们下载额外的源代码。然后您可以将其他库发布到远程服务器。
当您将这些行添加到项目中时,这就是您已经在做的事情
implementation("org:artifact:version")
如果您的项目是在 GitHub 上公开,使用类似的服务jitpack.io https://jitpack.io/。您还可以在 Bintray OSS 或 Maven Central 上设置一个帐户,以使您的库像大多数其他库一样可用。
如果您的项目是您公司内部的私人,你将需要一些Maven类型的服务器,无论是通用的Web服务器,还是Nexus或Artifactory,你都可以将其添加到存储库块中。 https://docs.gradle.org/current/userguide/declaring_repositories.html
repositories {
maven { url "http://some.maven.site/" }
}
然后添加compile
or implementation
来源,正常