web/Spring

[Spring Boot] Maven에서 Gradle로 변경 후 발생한 FreeMarkerWebConfiguration NoSuchFieldError 수정

반응형

Maven에서는 큰 문제가 없었으나 Gradle로 프로젝트를 변경하고 나서 Freemaker NoSuchFieldError 오류가 계속 발생했다.

Freemaker는 템플릿엔진인데 나는 이것을 사용하지 않고 JSP를 사용했는데 왜 오류가 발생하는지 원인은 처음에 몰랐다.

그래서 구글링을 하였지만 쉽게 원인이 해결되지 않았다. 

하나 발견하여 freemaker disable을 적용을 하였으나 여전히 오류가 발생했다.

https://fastfoodcoding.com/questions/1506440393799/how-to-disable-freemarker-templates-in-spring-boot


1. Configuration 페이지 설정

1
@EnableAutoConfiguration(exclude = { FreeMarkerAutoConfiguration.class })
cs


2. application 설정

1
2
// freemaker check template
spring.freemarker.check-template-location=false
cs



그래서 다시 한번 구글링을 했다. 역시 삽질은 계속되었다. 
해결방법은 중국 사이트에서 찾았다. 
https://www.cnblogs.com/lixiuming521125/p/6472691.html


원인은 webmvc 모듈에서 사용하는 freemaker 버전이 낮아서 발생한 문제였다.

간단하게 gradle에 freemaker를 최신 버전으로 설정하니 정상적으로 동작하였다.

1
compile group: 'org.freemarker', name: 'freemarker', version:'2.3.23'
cs


반응형