[Maven 에러] java.lang.IllegalStateException: Unable to load cache item

작성: 2022.06.24

수정: 2022.06.24

읽는시간: 00 분

Development/Daily Error

반응형

[Maven 에러] java.lang.IllegalStateException: Unable to load cache item

문제

1

Linux 운영체제에 maven 을 설치 하고, mvn 명령어를 실행 하던 중 아래와 같이 오류가 발생 했습니다.

[ERROR] Error executing Maven.
[ERROR] java.lang.IllegalStateException: Unable to load cache item
[ERROR] Caused by: Unable to load cache item
[ERROR] Caused by: Could not initialize class com.google.inject.internal.cglib.core.$MethodWrapper

원인

사용중인 메이븐 버전이 설치되어있는 JDK 의 버전을 지원하지 않기 때문에 발생한 문제 입니다.

해결

최신버전의 메이븐을 설치해서 문제를 해결 할 수 있습니다.

기존에는 sudo apt install maven 을 통해 설치를 했었는데, APT 저장소에 올라온 버전은 3.6.3인 반면에 2022년 6월 현재 최신 버전은 3.8.6 입니다.

다운로드

image-20220624153646756

wget https://dlcdn.apache.org/maven/maven-3/3.8.6/binaries/apache-maven-3.8.6-bin.tar.gz

최신 버전의 maven 을 다운 받습니다.

설치

opt 폴더에 압축을 풀어 줍니다.

sudo tar xf ./apache-maven-3.8.6-bin.tar.gz -C /opt

버전관리를 위해 심볼릭 링크를 생성 해 줍니다.

sudo ln -s /opt/apache-maven-3.8.6 /opt/maven

경로 설정

이제 mvn --version 명령어를 입력 해 정상적으로 작동 하는걸 확인 합니다.

아래 화면에서 보이는 것 처럼 처음 mvn 명령어를 쳤을 떄는 작동이 안 되었는데요.

image-20220624161845112

mvn 명령어를 했을 때 comand not found: mvn 이 뜨면

이때는 경로 설정을 해 주면 됩니다.

export PATH=/opt/maven/bin:$PATH

터미널을 껐다 켜면 이 설정이 사라지기 때문에 ~/.zshrc 파일이나 ~/.bashrc 파일에 내용을 추가 해 줘야 합니다.

추가 후에는 source ~/.zshrc 로 설정파일을 불러 오거나 터미널을 재시작 해야 하며, 이후에는 설정이 저장 됩니다.

image-20220624162236867

이제 mvn 명령어가 정상적으로 작동합니다.

감사합니다.

반응형