【问题标题】:Add local Gradle source module by absolute path通过绝对路径添加本地 Gradle 源模块
【发布时间】:2018-08-03 16:27:35
【问题描述】:

我想在我的 Gradle 项目中添加一个子项目。该项目位于我的硬盘驱动器上某处,例如:

/A/Path/to/a/ProjectA
/Another/Path/to/another/ProjectB

我想要实现的是使用 ProjectB 作为项目 A 中的源模块。但是,到目前为止,我所做的所有尝试 - 通过添加 include /Another/Path/to/another/ProjectB 或在 settings.gradle 中添加 include ':ProjectB'; project(':ProjectB').projectDir = ... - 都失败了.显然,Gradle 无法找到该项目。

如何将 ProjectB 添加为依赖项而不将其从其位置移动?

【问题讨论】:

  • 一般来说,您提出的解决方案(使用 settings.gradle)效果很好。您是否将 :ProjectB 依赖项添加到 ProjectA (build.gradle) 中?

标签: gradle include absolute


【解决方案1】:

使用 Gradle 3.4.1,以下对我有用(完整示例 here):

include 'app', 'common'

def MY_PATH = '/Users/johndoe/foo'
assert new File("$MY_PATH/random/path/common").exists()

project(':common').projectDir = new File("$MY_PATH/random/path/common")

【讨论】:

    【解决方案2】:

    感谢您的回复。 原来我犯了几个错误:

    1. 将项目添加到构建中取决于环境变量的值。我用 gradle.properties 中的一个属性替换了它。
    2. 我通过使用 IntelliJ 运行 settings.gradle 对此进行了测试。我误以为这会起作用,但它没有
    3. 我没有将项目作为依赖项添加到父项目的 build.gradle 文件中。

    现在可以了。再次感谢大家!

    【讨论】:

      猜你喜欢
      • 2017-05-01
      • 2020-03-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-09-24
      • 1970-01-01
      相关资源
      最近更新 更多