OKdevTV Docs
Home OKdevTV
ESC
java 1 min read 1.7 KB Raw Markdown
On this page (7)

Maven etc

dependency:list

bash
mvn dependency:list
  • 선언된 의존성 목록을 scope·버전과 함께 출력
  • 자주 쓰는 옵션
    • -DincludeScope=runtime : 특정 scope만 출력
    • -DexcludeTransitive=true : 전이 의존성 제외
    • -DincludeArtifactIds=commons-csv : 지정 아티팩트 필터링
  • 플러그인 버전을 명시하려면 mvn org.apache.maven.plugins:maven-dependency-plugin:3.7.1:list처럼 호출 가능

dependency:tree

bash
mvn dependency:tree
  • 전이 의존성을 포함한 계층 구조를 시각화
  • 충돌 진단 시 -Dverbose -Dscope=runtime 조합이 유용
  • 특정 그룹만 확인할 때는 -Dincludes=org.apache.commons:* 등을 사용

dependency:analyze

bash
mvn dependency:analyze
  • 선언했지만 사용하지 않거나, 사용했지만 선언하지 않은 의존성을 점검
  • 파이프라인 실패를 원하면 -DfailOnWarning=true 옵션을 더
  • 멀티모듈 프로젝트에서는 루트에서 실행해 전체 모듈을 한 번에 확인

dependency:purge-local-repository

bash
mvn dependency:purge-local-repository
  • 로컬 저장소의 의존성을 정리
  • -DreResolve=true 옵션을 사용하면 의존성을 다시 해결

dependency:resolve

bash
mvn dependency:resolve
  • 의존성을 해결하고 로컬 저장소에 저장

dependency:go-offline

bash
mvn dependency:go-offline
  • 빌드 시 필요한 의존성을 미리 다운로드

요약

  • 의존성 목록 확인: dependency:list + 필요한 scope/필터 옵션
  • 구조·충돌 분석: dependency:tree -Dverbose
  • 미사용/누락 점검: dependency:analyze -DfailOnWarning=true