Gradle5.1新增的配置选项

在Android Studio升级到3.4.0版本后,如果使用了Plugin3.4.0的版本则Gradle版本需要升级到5.1.1+,关于Plugin和Gradle版本的对应关系可以参考官方链接https://developer.android.com/studio/releases/gradle-plugin#updating-gradle

在Gradle5.1之后,maven配置新增了两个配置,content和mavenContent,在项目中的build.gradle中配置

allprojects {
    repositories {
        maven {
            url "http://repo.mycompany.com/maven2"
            content {
                includeGroup "my.company"
            }
        }
        jcenter {
            content {
                excludeGroupByRegex "my\\.company.*"
            }
        }
        maven {
            url "http://repo.mycompany.com/releases"
            mavenContent {
                releasesOnly()
            }
        }
        maven {
            url "http://repo.mycompany.com/snapshots"
            mavenContent {
                snapshotsOnly()
            }
        }
    }
}

content有这些:

  1. excludeGroup:在这个库中不搜索这个group,如my.company,但是只会匹配my.company,如果是my.company.module则不匹配。
  2. excludeGroupByRegex​:类似excludeGroup,但是可以使用正则表达式,如my\\.company.*可以匹配my.company和my.company.module。
  3. excludeModule​:精确匹配,指定group和module。
  4. excludeModuleByRegex:模糊匹配group和module,都可以使用正则表达式。
  5. excludeVersion​:指定group,module,和version。
  6. excludeVersionByRegex:类似excludeVersion,可以使用正则。
  7. includeGroup:在这个库中搜索包含这个group,类似excludeGroup精确匹配。
  8. includeGroupByRegex​:使用方法同2。
  9. includeModule:使用方法同3。
  10. includeModuleByRegex:使用方法同4。
  11. includeVersion:使用方法同5。
  12. includeVersionByRegex:使用方法同6。
  13. notForConfigurations​:在这个库中不应用特定的配置。
  14. onlyForAttribute:在这个库中应用特定的配置。
  15. onlyForConfigurations​:在这个库中仅应用特定的一组配置。

mavenContent只有两个releasesOnly和snapshotsOnly。分别表示只包含release和snapshots。

你可能感兴趣的:(Android)