2017-06-21 85 views
1

我想修改ExoPlayer的代码,为此我必须将其添加为模块。 我添加了一个文件夹'libraries'并将ExoPlayer文件夹放入其中。 enter image description here错误:项目:应用程序声明从配置'编译'依赖项配置'默认'这是没有在项目描述符中声明

然后我添加了包括:libraries:ExoPlayer在项目settings.gradle。最后,在项目结构的设置,我增加: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' 

谢谢您的未来帮助。

回答

1

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

最容易的是,如果你只是依靠ExoPlayer的发布的工件。

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

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