【问题标题】:How to exclude resolved plugin in Gradle 5.x with a custom one?如何在 Gradle 5.x 中使用自定义插件排除已解析的插件?
【发布时间】:2019-01-29 11:26:10
【问题描述】:
对于 Gradle 5.x,
是否可以排除在插件的传递依赖项中解析的插件('exclude' 在 gradle 中用于依赖代码库的方式相同)并提供自定义插件来代替它?
我可以通过以下代码提供我自己的自定义插件:
buildscript {
dependencies {
classpath files('/home/developer/Workspace/custom-gradle-plugin-0.3.6.jar')
}
}
apply plugin: com.custom.gradle.plugins.CustomSupportPlugin
但这无法覆盖通过传递插件解析解决的插件。
【问题讨论】:
标签:
java
gradle
groovy
build.gradle
gradle-plugin
【解决方案1】:
根据here 的建议,
我以以下方式修改了 build.gradle 以使其工作(增加了我的插件的版本号,从发布在存储库上的版本号):
buildscript {
dependencies {
classpath files('/home/developer/Workspace/custom-gradle-plugin-0.3.7.jar')
}
configurations.classpath {
resolutionStrategy {
force 'com.custom:custom-gradle-plugin:0.3.7'
}
}
}
命令结果:
gradle buildEnvironment
之前:
classpath
\--- com.custom:custom-gradle-plugin:0.3.6
之后:
classpath
\--- com.custom:custom-gradle-plugin:0.3.6 -> 0.3.7