【问题标题】:Gradle new configuration in multi-project build多项目构建中的 Gradle 新配置
【发布时间】:2015-10-14 16:53:45
【问题描述】:

我在多项目构建中创建了一个新配置,它不会下载我分配给它的依赖项。在网上找不到任何具有新配置的多项目示例。有没有人遇到过类似的问题?

在我的 build.gradle 根文件中:

allprojects {
    configurations {
      myConf
    }
}

然后在我的 build.gradle 孩子中:

dependencies {
    myConf 'org.aspectj:aspectjrt:1.8.6'
}

项目无法编译,当我更改 myConf 以编译配置时,它可以正确编译。

【问题讨论】:

  • 请出示一些ecode/config,我们的水晶球尚未交付

标签: java gradle


【解决方案1】:

配置的依赖关系仅在使用配置时下载。由于Java编译器使用的是compile配置,所以你的myconf配置没有用到,所以它的依赖不会被下载。

【讨论】:

  • 我的回答解释了为什么 Gradle 不下载依赖项。但显然你有一些需要(你假设)需要额外的配置。也许您应该发布一个新问题来解释您要达到的目标。
  • 谢谢,这对我来说很有意义。只是为了解释我想要实现的目标:我有我的主要应用程序和附加组件(方面)。我想以不同于我的应用程序依赖项的方式处理方面的依赖项(复制到不同的 lib 目录)
  • 问题是我也需要这些依赖项来编译。可以将一个依赖项分配给多个配置吗?
  • 我建议为您的应用程序和组件使用单独的模块。最佳实践是每个模块有一个输出工件(更准确地说:只有输出工件都共享相同的源。例如,请参阅 Android 构建:一个应用程序模块,多个 APK)。在您的情况下,您希望在同一模块中拥有具有不同来源的应用和组件。
猜你喜欢
  • 2021-02-04
  • 2015-04-26
  • 1970-01-01
  • 2017-10-06
  • 1970-01-01
  • 1970-01-01
  • 2012-06-24
  • 1970-01-01
  • 2021-03-31
相关资源
最近更新 更多