代码之家  ›  专栏  ›  技术社区  ›  firegloves

在中使用Gradle 5.4.1结果签名maven jar无法设置未知属性“keyId”

  •  0
  • firegloves  · 技术社区  · 5 年前

    我试图生成一个maven签名的jar,但是如果我收到这个异常

    groovy.lang.MissingPropertyException: Could not set unknown property 'keyId' for object of type org.gradle.plugins.signing.SigningExtension
    

    这是我的身材。格拉德尔

    plugins {
        id 'java-library'
        id 'maven-publish'
        id 'signing'
    }
    
    apply from: 'gradle.properties'
    
    group 'com.foo'
    version '1.0.0'
    
    sourceCompatibility = 1.8
    
    repositories {
        mavenCentral()
    }
    
    dependencies {
        // dependencies
    }
    
    
    task sourcesJar(type: Jar) {
        archiveClassifier = 'sources'
        from sourceSets.main.allJava
    }
    
    task javadocJar(type: Jar) {
        archiveClassifier = 'javadoc'
        from javadoc.destinationDir
    }
    
    
    
    publishing {
        publications {
            myLibrary(MavenPublication) {
                from components.java
    
                artifact sourcesJar
                artifact javadocJar
            }
        }
    
        repositories {
            maven {
                name = 'myRepo'
                url = "file://${buildDir}/repo"
            }
        }
    }
    
    signing.keyId='MY_KEY'
    signing.password='MY_SECRET'
    signing.secretKeyRingFile=/NOT_TO_PUBLISH/secret-keys.gpg
    
    
    signing {
        sign publishing.publications.myLibrary
    }
    

    如果我对签名部分发表评论,所有作品都很好,我的出版物也会生成。

    任何帮助都将不胜感激

    0 回复  |  直到 5 年前
        1
  •  0
  •   Jake Lee    5 年前

    这个 documentation 没有引号:

    signing.keyId=24875D73
    signing.password=secret
    signing.secretKeyRingFile=/Users/me/.gnupg/secring.gpg
    

    我肯定你试过了,但是你试过没有引号吗?

    上面的文档还包含设置值的另一种方法,您是否得到了不同的响应?

        allprojects {
            ext."signing.keyId" = id
            ext."signing.secretKeyRingFile" = file
            ext."signing.password" = password
        }
    

    此外,您是否使用了最新版本的Gradle(因此它正确地支持该插件)?