Error : Kotlin 플러그인 버전이 안 맞을 때 생기는 문제

Message

class annotated with @Configuration could implicitly subclassed and must not be final.

kotlin은 기본이 final이라서 @Cofiguration, @Bean 등의 스프링 설정파일을 사용할 때 오류가 발생한다.

plugin: kotliln-spring 을 사용하면 원래 괜찮아야 되는데….

그래들 라이브러리 버전을 몇 개 올려놨더니 문제가 발생한다.

 

여기저기 찾아봤는데 해결책이 잘 안보인다..annotation processing을 풀어놓으라는 말도 있고(안됨)

예전에 했던 프로젝트는 그냥잘 썼는데 갑자기?

변경한 부분이 spring을 5로 올리고 kotlin을 1.12.0에서 1.12.20으로 올렸는데

intellij plugin 버전은 1.12.1인것같아서 플러그인 업데이틀 해봤는데(안댐)

저번에도 어노테이션 쓸 때 arrayOf로 써야되는거랑 이런부분 바뀔 때 마다 오류나더니만…

꼬출린 진짜

해결하는데 시간이 한참 걸릴 것 같다.

실행된다.

플러그인과 의존성의 버전을 맞춰주자…..꼭

buildscript {
	repositories {
		jcenter()
		mavenCentral()
		maven {
			url "https://plugins.gradle.org/m2/"
		}
	}
	dependencies {
		classpath "org.springframework.boot:spring-boot-gradle-plugin:$spring_boot_version"
		classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
		classpath "org.jetbrains.kotlin:kotlin-allopen:$kotlin_version"
		classpath "org.jetbrains.kotlin:kotlin-noarg:$kotlin_version"
	}
}


allprojects {
	apply plugin: 'java'
	apply plugin: 'groovy'
	apply plugin: 'kotlin'
	apply plugin: 'kotlin-spring'
	apply plugin: 'kotlin-jpa'


	dependencies{
                //Deprecated 라고함.
		//compile "org.jetbrains.kotlin:kotlin-stdlib-jre8:$kotlin_version"
                //jdk8로 바꿔준다.
		compile "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version"
		compile "org.jetbrains.kotlin:kotlin-reflect:$kotlin_version"
        }
}

코틀린은 갈길이 멀다. 안정화되려면 2년은 있어야 하지 않을까