当前位置:   article > 正文

使用maven仓库中的gradle插件_maven-gradle-plugin

maven-gradle-plugin

gradle plugin的使用文档: https://docs.gradle.org/current/userguide/plugins.html

gradle插件的命名限定方式与maven有些许差别,一般发布maven插件不会按照gradle插件默认的命名格式进行。 因此我们要使用存放在maven仓库中的gradle插件,就需要做一些转换。

官方问当给出的配置方式个人感觉不是很合理,官方使用namespace进行配置。

需要注意的是针对一个gradle插件:id 'com.example.sample-plugins' version '1.0.0',

requested.id.namespace为:com.example
requested.id.id为:com.example.sample-plugins
requested.id.name为:sample-plugins
requested.version为:1.0.0

因此我们可以使用如下方式配置一个插件的转换,或者当maven仓库命名也不符合这种规则时直接写死maven的groupId和artifactId及版本号。

settings.gradle

pluginManagement {
    plugins {
    }
    resolutionStrategy {
      eachPlugin {
            if (requested.id.id == 'com.example.sample-plugins') {
                //useModule('com.example:sample-plugins:1.0.0')
                useModule(String.join(":" ,requested.id.namespace, requested.id.name, requested.version))
            }
        }
    }
    repositories {
      gradlePluginPortal()
      mavenLocal()
      mavenCentral()
      maven {
         allowInsecureProtocol = true
         url = 'http://my-own-repo-url/'
       }
    }
}
rootProject.name = 'my-project'
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22

经过转换之后,在build中正常使用插件:

build.gradle

plugins {
    id 'com.example.sample-plugins' version '1.0.0'
}
  • 1
  • 2
  • 3
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Gausst松鼠会/article/detail/237501
推荐阅读
相关标签
  

闽ICP备14008679号