gpt4 book ai didi

gradle - Gradle人工插件说 “Cannot cast object ' org.jfrog.gradle.plugin.artifactory.dsl.ArtifactoryPluginConvention'...”

转载 作者:行者123 更新时间:2023-12-03 09:10:57 37 4
gpt4 key购买 nike

这是获取人工插件的配置:

buildscript {
repositories {
mavenCentral()
maven { url 'http://jcenter.bintray.com' }
}
dependencies {
classpath group:'org.jfrog.buildinfo', name: 'build-info-extractor-gradle', version: '3.0.1'
}
}
apply plugin:'com.jfrog.artifactory'
apply plugin:'ivy-publish'

...some publish spec stuff...

我运行gradle(2.3)并且得到:
> Failed to apply plugin [id 'com.jfrog.artifactory']
> Cannot cast object 'org.jfrog.gradle.plugin.artifactory.dsl.ArtifactoryPluginConvention@6b6c7be4' with class 'org.jfrog.gradle.plugin.artifactory.dsl.ArtifactoryPluginConvention' to class 'org.jfrog.gradle.plugin.artifactory.dsl.ArtifactoryPluginConvention'

当然看起来像是类路径问题,但是我确实有一个使用同一个gradle / artifactory配置集的项目和一个兄弟项目,一个有效,而另一个则没有。两者都是同一个顶级项目的一部分。相同的JDK(1.8.0_20)。相同的 Gradle 。一切都一样。

我很困惑...

最佳答案

问题是,当我向兄弟项目添加各种位时,这意味着我有两个项目定义了buildscript {}部分。

buildscript {
...
dependencies {
classpath group:'org.jfrog.buildinfo', name: 'build-info-extractor-gradle', version: '3.0.1'
}
}

显然,这导致了两个不同版本的依赖关系存在于类路径中,因此出现了错误。

解决方案是将buildscript位移到主项目中,以便这些依赖项仅定义一次:
buildscript {
repositories {
maven { url "https://plugins.gradle.org/m2/" }
}
dependencies {
classpath group:'org.jfrog.buildinfo', name: 'build-info-extractor-gradle', version: '3.0.1'
}
}

关于gradle - Gradle人工插件说 “Cannot cast object ' org.jfrog.gradle.plugin.artifactory.dsl.ArtifactoryPluginConvention'...”,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29807622/

37 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com