我们使用公司范围的gradle配置,该配置适用于我们所有的gradle项目。
使用此配置的项目可能会应用不同类型的插件(特别是插件java
或android
& android-library
)。为了让sonarRunner
插件自动检查android项目,必须应用其他属性,这些属性不适用于java项目。
现在问题:如何将额外的sonarRunner(或其他)属性仅应用于应用特定(在本例中为“android”或“android-library”)插件的项目?
我到目前为止所尝试的内容,但由于AndroidPlugin
属性在准备阶段不知道,因此无效:
plugins.withType(AndroidPlugin) {
sonarRunner {
sonarProperties {
property "sonar.profile", "Android"
...
}
}
}
答案 0 :(得分:2)
听起来代码缺少AndroidPlugin
类的导入。或者,plugins.withId("android")
可用于当前的gradle版本,afterEvaluate { if (plugins.hasPlugin("android")) { ... } }
可用于gradle 1.12及更早版本。