【问题标题】:Error:Project :app declares a dependency from configuration 'compile' to configuration 'default' which is not declared in the descriptor for project错误:项目:应用程序声明了从配置“编译”到配置“默认”的依赖关系,该依赖关系未在项目的描述符中声明
【发布时间】:2017-06-21 10:15:07
【问题描述】:

我想修改 ExoPlayer 的代码,为此我必须将它添加为一个模块。 我添加了一个文件夹 'libraries' 并将 ExoPlayer 文件夹放入其中。

然后我在项目 settings.gradle 中添加了包含 :libraries:ExoPlayer。最后在项目结构设置中,我将:libraries:ExoPlayer 添加为我的项目的依赖项,但在此之后,我不断收到此错误:

Error:Project :app declares a dependency from configuration 'compile' to configuration 'default' which is not declared in the descriptor for project :libraries:ExoPlayer.

这是我应用的settings.gradle 的内容。

include ':app'
include ':libraries:ExoPlayer'

感谢您未来的帮助。

【问题讨论】:

    标签: android gradle android-gradle-plugin exoplayer


    【解决方案1】:

    ExoPlayer 是一个自己的多项目构建,在其settings.gradle 文件中定义。您不能简单地将这个多项目构建导入到您自己的多项目构建中,因为多项目构建在 Gradle 中不是分层的。每个构建过程最多有 一个 settings.gradle 文件。哪一个取决于你在哪里执行 gradle。

    最简单的方法是仅依赖 ExoPlayers 发布的工件。

    如果您需要新构建,因为您需要尚未发布的更改,您仍应声明对预构建工件的依赖关系,然后使用 Gradle 复合构建功能将工件替换为子构建被执行。这反过来可以毫无问题地成为自己的多项目构建。

    请在 Gradle 用户指南中找到有关它的更多信息。

    【讨论】:

      猜你喜欢
      • 2017-08-13
      • 2018-04-28
      • 2016-06-12
      • 2022-01-20
      • 2014-09-14
      • 2015-07-08
      • 2019-08-15
      • 2018-11-24
      • 2011-03-01
      相关资源
      最近更新 更多