Pet*_*rs_ 10 java dependencies project-structure gradle build.gradle
您好,我是新来的gradle,这让我有些困惑。如何在我的gradle配置中添加依赖项以访问projectA1中的B1.java?项目B是gradle项目,而项目A只是另一个gradle项目的文件夹。
这是我的结构:
我试图阅读gradle文档,但对我来说还不清楚。任何帮助表示赞赏。谢谢!
您应该具有以下结构:
ProjectA
|--projectA1
|----build.gradle
|--projectA2
|----build.gradle
|--settings.gradle
|--build.gradle
ProjectB
|--projectB1
|----build.gradle
|--projectB2
|----build.gradle
|--settings.gradle
|--build.gradle
Run Code Online (Sandbox Code Playgroud)
您可以在项目中链接外部模块。
1)在您的项目中 projectA/settings.gradle
include ':projectA1',':projectA2',':projectB1'
project(':projectB1').projectDir = new File("/workspace/projectB/projectB1")
Run Code Online (Sandbox Code Playgroud)
2)在模块中添加依赖build.gradle项projectA1
dependencies {
compile project(':projectB1')
}
Run Code Online (Sandbox Code Playgroud)
除非项目 A1 和 B1 位于同一源存储库中并且一起检出和检入,否则您确实应该将项目 B1 作为外部依赖项。
在项目 A1 build.gradle 中:
dependencies{
compile 'projectB1group:projectB1module:projectB1version'
}
Run Code Online (Sandbox Code Playgroud)
当然,要实现此目的,您必须首先将 B1 二进制文件发布到可从项目 A1 访问的存储库。这可以是外部 nexus/artifactory 类型的 maven 存储库,也可以是本地 maven .m2 缓存,甚至是普通的旧文件系统。对于 Maven 发布,请参阅maven“maven-publish”插件。
如果两个项目位于同一源存储库中,则应将 ProjectA 和 ProjectB 组织为根“容器”项目下的子项目。根项目不需要有自己的源代码。
在此处阅读有关在 gradle 中组织多项目构建的信息。
如果根项目有settings.gradle包含项目 B1 的 include 行,则可以像这样引用根项目下的任何项目:
project(':B1')
Run Code Online (Sandbox Code Playgroud)
因此,要将 B1 添加为 A1 的依赖项,请在 A1 的 build.gradle 中:
compile project('B1')
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4939 次 |
| 最近记录: |