개인적인 정리

dependencies.dependency.systemPath... 본문

전자정부표준프레임워크/maven

dependencies.dependency.systemPath...

yeon.Biju 2022. 7. 3. 15:17

라이브러리를 추가하기 위해 pom.xml을 열었더니 아래와 같이 빨강이 떠 있었다.

그동안 문제가 없었던 것 같은 느낌이 들어서 이전에 작업하던 이클립스를 열어보니 빨강이 전혀 없었다.

 

Multiple markers at this line
- 'dependencies.dependency.systemPath' for kr.go.gpki:libgpkiapi_jni:jar should not point at files within the project directory, ${basedir}/src/main/webapp/WEB-INF/lib/libgpkiapi_jni-1.4.0.0.jar will be unresolvable by dependent projects
- 'dependencies.dependency.systemPath' for kr.go.gpki:libgpkiapi_jni:jar must specify an absolute path but is ${basedir}/src/main/webapp/WEB-INF/lib/libgpkiapi_jni-1.4.0.0.jar

 

어떻게 할까 고민하며 이것저것 찾아봤지만 마땽한(원하는) 해결책은 없어보였다.

그래서 이런저런 시도를 해봤다.

사실 저 에러(?)가 나든 말든 이클립스는 잘 돌아가는 것 같아서 무시할까도 생각해봤으나 이왕이면 원인을 찾아보고자 했다.

빌드를 해도 문제가 없어보였다. 제대로 라이브러리 폴더에 들어가 있는 것 같으니 말이다.

 

 

1. 이클립스를 비교해봤다.

에러가 나지 않는 이클립스와 에러가 나는 이클립스를 비교해봤다.

왼쪽이 에러가 나지 않은 이클립스, 오른쪽이 에러가 난 이클립스의 maven 버전인데 차이가 있다.

 

에러가 나지 않은 이클립스의 maven 플러그인 버전은 3.6.3/1.16.0/20210129-0849

에러가 난 이클립스의 maven 플러그인 버전은 3.8.1/1.18.1.20211011-2139 였다.

그래서 이클립스의 maven 플러그인과 관련된 문제라 생각하고

에러가 나지 않은 이클립스의 maven 플러그인을 업데이트 해봤더니 동일한 문제가 발생을 하였다.

 

그래서 내린 결론은 maven 플러그인의 버전에 따른 차이라고 볼 수 있을 것 같다. 

maven 문서를 찾아서 읽어보는데 아래와 같은 메세지가 있다.

혹시 그래서 아닐까? 하고 생각해봤다.

 

Important note: This is deprecated.

https://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html#Dependency_Scope

 

Maven – Introduction to the Dependency Mechanism

Introduction to the Dependency Mechanism Dependency management is a core feature of Maven. Managing dependencies for a single project is easy. Managing dependencies for multi-module projects and applications that consist of hundreds of modules is possible.

maven.apache.org

 

이제 원인은 대충 안 것 같으니 해결책을 찾아봐야겠다.

가만히 내버려둬도 잘 돌아가는 것 같지만  역시 빨강은 신경이 쓰인다.

 

2. 해결방법...

해결방법을 꽤 찾아봤으나 몇가지 고민이 남아서 링크만 걸어두기로 한다.

 

https://great-developer.tistory.com/213

 

[Maven] 로컬 jar 추가하기

- @참고: m.blog.naver.com/PostView.nhn?blogId=marnet&logNo=220482280396&proxyReferer=https:%2F%2Fwww.google.com%2F 메이븐 로컬 jar 추가하기 메이븐을 편하면서도 그지같다. 호불호가 극명하게 갈리는 듯...

great-developer.tistory.com

http://itnp.kr/post/maven-local-repository

 

Maven Repository 없이 로컬 jar 파일을 maven project 에 추가하는 방법

Maven Repository 없이 로컬 jar 파일을 maven project 에 추가하는 방법

itnp.kr

아래 내용은 나랑은 상관이 없는 느낌이지만 일단 링크는 걸어둔다.

참조할만한 내용이 있어보인다.

 

https://slf4me.com/post/spring-boot/maven-include-system-library/

 

Spring Boot에서 maven으로 빌드 시 system scope library를 포함하기

Spring Boot로 빌드를 해보면 실행 가능한 jar 하나만 만들어준다. 실행 및 설치 시 의존성이 걸린 다른 라이브러리들을 따로 관리할 필요가 없어서 매우 간편하다. 이렇게 모

slf4me.com

 

Apache Maven 에 대한 좋은 자료가 있는 것 같이서 링크를 걸어둔다.

https://twoseed.atlassian.net/wiki/spaces/OPS/pages/71827500/Apache+Maven 

 

Apache Maven - Twoseed 공개 자료 - Confluence

 

twoseed.atlassian.net

 

Comments