我的项目build.gradle
:
...
plugins {
id "maven-publish"
id "com.jfrog.bintray" version "1.8.5"
}
我的库模块build.gradle
:
apply plugin: 'kotlin'
apply plugin: 'java-library'
apply plugin: 'com.android.lint'
...
if (project.rootProject.file('local.properties').exists()) {
apply from: rootProject.file('deploy-bintray.gradle.kts')
}
我的库模块deploy-bintray.gradle.kts
:
import com.jfrog.bintray.gradle.BintrayExtension
apply(plugin = "maven-publish")
apply(plugin = "com.jfrog.bintray")
configure<BintrayExtension> {...}
configure<PublishingExtension> {...}
这是我从 gradle assemble
得到的错误:
Extension of type 'BintrayExtension' does not exist. Currently registered extension types: [ExtraPropertiesExtension, KotlinJvmProjectExtension, KotlinTestsRegistry, DefaultArtifactPublicationSet, ReportingExtension, SourceSetContainer, JavaPluginExtension, JavaInstallationRegistry, LintOptions, PublishingExtension, BintrayExtension]
我添加了:
buildscript {
repositories {
maven("https://plugins.gradle.org/m2")
}
dependencies {
classpath("com.jfrog.bintray.gradle:gradle-bintray-plugin:1.8.5")
}
}
但我得到相同的输出...如果我打开 BintrayExtension.groovy
包名称 com.jfrog.bintray.gradle
会出现此警告:
Package name mismatch. Actual: 'com.jfrog.bintray.gradle', expected: ''
和类(class):
Class 'BintrayExtension' already exists in 'com.jfrog.bintray.gradle'
我在这里缺少什么?
最佳答案
解决方案是替换:
id "com.jfrog.bintray" version "1.8.5"
与:
plugins.apply(BintrayPlugin::class.java)
非常感谢Tom Eyckmans pointing这个出来了。
关于android - 类型 'BintrayExtension' 的扩展不存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62239488/