maven 외부 jar 추가

maven을 이용해서 개발하다보면 알아서 라이브러리를 관리해 줘서 편하지만 메이븐 중앙 리파지토리에서 포함 안된 외부 jar를 포함 시켜야 할때가 있다.
다른 회사들과 모듈연동이나 암호화할때 jar파일만 받아서  그 api를 호출하는
방식일때 사용된다.
그럼 외부에서 제공해주는 jar 파일을 메이븐 프로젝트에 추가 시켜줘야하고
회사의 사설 리파지토리가 있으면 그쪽에 jar를 넣어주고 dependency를 추가하면
별다른 설정없이 외부 jar를 사용가능하다.
그렇게 하지 못한다면 프로젝트내 특정디렉토리를 리파지토리로 잡고
그 안에 외부 jar를 넣으면 된다.
pom.xml에
             in-project
             custom jars
             file://${project.basedir}/external
이런식으로 선언해주면 project.basedir 경로를 리파지토리로 등록한다.
리파지토리 아래에 폴더명은 다음과 같은 컨밴션을 따른다.
/groupId/artifactId/version/artifactId-verion.jar
groupId = org.mockito
artifactId = mockito-all
version = 1.9.0
the library file =  mockito-all-1.9.0.jar
    org.mockito
    mockito-all
    1.9.0

리파지토리가 잘 잡히고 경로가 컨벤션에 따라 잘 설정되었다면
메이븐이 프로젝트내 리파지토리를 잡아서 해당 jar파일을 dependency 해줄 수 있다.
단순 참조를 위해 다음과 같이 쓸 수 도 있는데
 system
    ${project.basedir}/custom.jar
 scope 의 system 이기 때문에 maven 빌드 시 해당 jar 파일이 포함되지 않는다.
system – system 스코프는 provided와 비슷하다. provide는 컴파일 시점에는 필요
하지만, 배포할 때 포함할 필요는없다. jar파일을 제공해야하고 스코프의 jar파일은
포함이 안될수도 있다.

maven 외부 jar 추가”에 대한 답글 1개

Add yours

  1. <![CDATA[

    local-project
    custom jars
    file://${project.basedir}/lib

    ]]>
    위방식대로 사용시 레파지토리를 이렇게 추가해주고 사용해야하지 않나요?

    좋아요

답글 남기기

아래 항목을 채우거나 오른쪽 아이콘 중 하나를 클릭하여 로그 인 하세요:

WordPress.com 로고

WordPress.com의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

Google photo

Google의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

Twitter 사진

Twitter의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

Facebook 사진

Facebook의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

%s에 연결하는 중

WordPress.com 제공.

위로 ↑

%d 블로거가 이것을 좋아합니다: