android-maven-gradle-plugin + gradle-experimental

时间:2017-03-07 11:40:32

标签: android gradle android-gradle android-maven-plugin gradle-experimental

在我的android库项目中,我使用com.github.dcendents:android-maven-gradle-plugin:1.5将我的库安装到我当地的maven repo,这一直都很好。现在,由于各种与NDK相关的原因,我不得不切换到gradle-experimental-0.8.2 plugin。此版本的gradle插件使用新语法,例如model块周围的android块。

问题是,当使用这种新语法时,我无法使我的maven工件任务起作用,例如直接从示例中获取的sourcesJar任务:

task sourcesJar(type: Jar) {
    from android.sourceSets.main.java.srcDirs
    classifier = 'sources'
}

这不再有效,因为没有阻止android。我假设我只需要更改为新语法,例如model.android.sources.main.java.source.srcDirs,但没有运气。事实上,它说could not get unknown property 'android' for task 'lib:model' of type org.gradle.api.reporting.model.ModelReport

我也有更简单的陈述,例如

version = android.defaultConfig.versionName

这对android.defaultConfigmodel.android.defaultConfig也不起作用。

我在这里做错了什么?当我无法引用块中定义的变量时,感觉就像我误解了gradle / groovy的工作方式,就像我以前使用稳定的gradle版本一样。我认为android块只是在model块内移动了一层间接,所以为什么我不能引用像model.android.defaultConfig.versionName这样的内容?

0 个答案:

没有答案