我有以下情况:
我在gradle中有一个android库项目,包含2个子模块:
MyLibProject - SubModule1 - SubModule2
在MyLibProjects build.gradle文件中,我定义了如下变量:
ext {
daggerVersion = "1.2.2"
}
SubModule1和SubModule2具有如下依赖关系:
dependencies {
compile 'com.squareup.dagger:dagger:'+rootProject.ext.daggerVersion
}
到目前为止一切顺利。我可以用它们构建.aar库并将它们部署到我的maven存储库,一切都很好。
现在我想在Android应用程序项目中包含MyLibProject。所以我包括我的图书馆项目已经包括匕首。但是,dagger的注释处理编译器需要通过使用hugo vissers android-apt gradle plugin包含在应用程序项目中
dependecies {
compile 'com.company:mylibproject:1.0.0'
apt 'com.squareup.dagger:dagger-compiler:1.2.2'
}
到目前为止,一切都很顺利。 我只有一个问题"我想解决。我正在谈论的问题是,在我的应用程序中,我必须知道dagger-compiler的版本。有没有办法将像MyLibProject的额外信息放入maven / aar文件中,以便我可以在应用程序build.gradle文件中以某种方式访问它们?
是这样的(应用程序build.gradle文件)是可能的:
dependecies {
compile 'com.company:mylibproject:1.0.0'
apt 'com.squareup.dagger:dagger-compiler:'+MyLibraryProject.ext.daggerVersion
}
我的意思是,是否可以从库项目文件中获取匕首版本,或者是否有一个gradle插件来获取匕首版本?