Gradle在主项目中为特定的子项目排除插件

我正在研究一个包含许多子项目的大项目,这些子项目都是用gradle构build的。 一般来说,所有的项目都是java项目,所以在build.gradle主脚本中

allprojects { apply plugin: 'java' } 

是为所有项目指定的。

不过,我需要删除某个项目子树的插件,或者明确地从插件中排除项目。

下面粗略的介绍一下项目的布局

 + Main +-- javaApplications +-- javaLibs +-- Android +-----AndroidApps +-----AndroidLibs 

Android / *不需要Java插件。 什么是实现这个最好的解决scheme? 注:我不能更改项目结构。

  • Crashlytics(Fabric)为应用程序变体(构buildtypes,产品风格)
  • 无法解决com.android.tools.build:gradle:0.5.+
  • 错误:(1,0)未findid为“android”的插件
  • 适用于Gradle instrumentTest的AndroidManifest.xml
  • 错误:(27,13)无法解决:com.google.firebase:firebase-core:9.8.0
  • Gradle:如何在Android库build立后运行自定义任务?
  • Gradle + Robolectric:我在哪里放置文件org.robolectric.Config.properties?
  • build.gradle中的新applicationId如何工作?
  • 这应该做的伎俩(当放置在根build.gradle脚本)

     configure(allprojects - project(':Android')) { //or ':Android:AndroidApps' not sure println "applying java plugin to $project" apply plugin: 'java' } 

    你也可以这样做:

     allprojects { if (!it.name.startsWith('Android')) { apply plugin: 'java' } }