에러

Unknown / line 1 / pom.xml / Maven Configuration Problem

[ 에러 화면 ]

 

개발환경  

IDE : STS4 (Spring Tool Suite 4 / Version: 4.2.1.RELEASE / Build Id: 201904170946)

 

 

상황

STS4에서 프로젝트를 하나 생성하자 마자 pom.xml에서 에러가 발생했다. 프로젝트를 생성했을 때 기본적으로 "org.springframework.boot spring-boot-starter parent 2.1.5 RELEASE"를 사용하는 것으로 pom.xml에 세팅되어 있다. 그리고 git에서 checkout받은 스프링 프로젝트를 import하자마자 pom.xml에서 에러가 위와 같은 에러가 발생했다. 

 

원인

Spring Framework는  빌드 및 컴파일을 할 때 Maven에 의존하고 있는데, 둘 간에 뭔가가 맞지 않기 때문에 발생한 것이다. 정확한 원인은 파악하지 않았지만, 해결책은 Spring Boot 의존성을 체크하는 필드인 "spring-boot-starter-parent"를 수정하는 것이다. 해결을 하던 중 찾아낸 다른 몇가지 방법들도 함께 아래에 소개한다.   


해결

[방법1] Update Project
Project Explorer > 해당 프로젝트 마우스 우클릭 > Maven > Update Project…
* 이 방법은 STS가 최신버전일 때 가능한 해결방법이다. 본인처럼 최신버전이 아니라면 안될 수도 있으니 아래 방법2와 방법3을 참고바란다.


[방법2] pom.xml 에서 maven plugin 변경 (property 추가)

<properties>
	<java.version>1.8</java.version>
	<maven-jar-plugin.version>3.1.1</maven-jar-plugin.version>
</properties>



[방법3] pom.xml 에서 spring-boot-starter-parent version 변경 (version 2.1.4.RELEASE 로 수정)
기존의 세팅정보

<parent>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-parent</artifactId>
	<version>2.1.5.RELEASE</version>
	<relativePath/> 
</parent>

변경된 세팅정보

<parent>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-parent</artifactId>
	<version>2.1.4.RELEASE</version>
	<relativePath/> 
</parent>

 

 

참고

https://stackoverflow.com/questions/56142369/why-am-i-getting-unknown-error-in-line-1-of-pom-xml
https://stackoverflow.com/questions/56154266/why-does-change-from-spring-boot-version-2-1-4-to-2-1-5-gives-unknown-configurat

https://eglowc.tistory.com/38