无法为 org.springframework.boot.gradle.dsl.SpringBootExtension 类型的扩展“springBoot”设置未知属性“mainClassName”

我有这样的 build.gradle 并且它有效:

plugins {
    id 'org.springframework.boot' version '2.5.8' apply false
    ...
}
...
    springBoot {
        mainClassName = 'com.mir3.service.contactfileparser.Main'
    }

但是如果我将 spring boot 版本升级到 2.6.2,它会失败并出现错误:

plugins {
    id 'org.springframework.boot' version '2.6.2' apply false
    ...
}
...
    springBoot {
        mainClassName = 'com.mir3.service.contactfileparser.Main'
    }

错误文本是:

A problem occurred evaluating root project 'myProject'.
> Could not set unknown property 'mainClassName' for extension 'springBoot' of type org.springframework.boot.gradle.dsl.SpringBootExtension.

我该如何解决?从 2.5.8 迁移到 2.6.2 的正确方法是什么?

stack overflow Could not set unknown property 'mainClassName' for extension 'springBoot' of type org.springframework.boot.gradle.dsl.SpringBootExtension
原文答案
author avatar

接受的答案

利用:

springBoot {
    mainClass = 'com.mir3.service.contactfileparser.Main'
}

SpringBootExtension 有:

/**
 * Returns the fully-qualified name of the application's main class.
 * @return the fully-qualified name of the application's main class
 * @since 2.4.0
 */
public Property<String> getMainClass() {
    return this.mainClass;
}

mainClassName 在 2.4.0 中被弃用,取而代之的是 mainClass ,并计划在 2.6.0 中删除。此提交已将其删除: Remove deprecated code flagged for removal


答案:

相关问题