Spring Boot Kotlin项目在Eclipse中不起作用

时间:2019-07-18 16:11:38

标签: spring eclipse spring-boot intellij-idea kotlin

我有一个使用以下版本的eclipse运行的spring boot项目

Spring Boot: 2.1.6.RELEASE
Kotlin:1.3.41

该代码在IntellIJ中运行良好-但是在Eclipse中,我得到了这些错误

org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration problem: @Configuration class 'SwaggerConfig' may not be final. Remove the final modifier to continue.
Offending resource: class path resource [com/kotlin/springboot/kotlindemo/config/SwaggerConfig.class]

这是SwaggerConfig类

@Configuration
@EnableSwagger2
class SwaggerConfig {

    @Bean
    fun api(): Docket = Docket(DocumentationType.SWAGGER_2)
    .select()
    .apis(Predicates.not(RequestHandlerSelectors.basePackage("org.springframework.boot")))
    .build()

}

我的pom.xml文件中具有以下插件设置

<plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
        </plugin>
        <plugin>
            <groupId>org.jetbrains.kotlin</groupId>
            <artifactId>kotlin-maven-plugin</artifactId>
            <configuration>
                <args>
                    <arg>-Xjsr305=strict</arg>
                </args>
                <compilerPlugins>
                    <plugin>spring</plugin>
                </compilerPlugins>
            </configuration>
            <dependencies>
                <dependency>
                    <groupId>org.jetbrains.kotlin</groupId>
                    <artifactId>kotlin-maven-allopen</artifactId>
                    <version>${kotlin.version}</version>
                </dependency>
            </dependencies>
        </plugin>
    </plugins>

同样,所有内容在IntelliJ中都可以正常运行,但不能使Eclipse失效 有什么想法可以解决日食方面的问题?

谢谢 达米安

1 个答案:

答案 0 :(得分:0)

我已升级到kotlin插件的最新版本,这解决了我面临的问题。