원본 본문으로 이동하기

로컬 디스크의 jar를 메이븐에 포함하기

박용서 - 1. 로컬 파일로 포함하기 (스코프 시스템) pom.xml 의 dependencys 에 아래와 같이 추가해줍니다. <dependency> <groupId>그룹ID</groupId> <artifactId>아티펙트ID</artifactId> <version>버전</version> <scope>system</scope> <systemPath>${basedir}/lib/saro.jar</systemPath> </dependency> 위와 같이 입력하셨다면 프로젝트경로/lib/saro.jar 가 추가됩니다. 하지만 이 방법은 문제점이 하나 있습니다. 문제점 - https://gs.saro.me/#!m=elec&jn=744 식으로 jar를 포함하여 빌드한다면 스코프가 system 이라 포함되지 않습니다. 그럴경우 아래 2번 리포지토리 등록을 통한 포함을 참고해주시기 바랍니다. 2. 리포지토리를 통하여 포함하기 pom.xml 에 아래와 같이 리포지토리를 추가해줍니다. <repositories> <repository> <!-- id나 name은 아무거나 설정하시면됩니다. --> <id>프로젝트아이디</id> <name>이름</name> <!-- 정확히 말하면 url을 등록하는겁니다. ${basedir}는 현재경로 --> <url>file://${basedir}/lib</url> </repository> </repositories> 위와 같이 적으면 file://${basedir}/lib 즉 프로젝트경로/lib를 리포지토리로 설정하는 것입니다. 이것을 공유하고싶다면 웹에올리고 주소를 작성하는 방법도 있습니다. 즉, URL 형태를 가지고 있기 때문에 http나 ftp 등에도 활용할 수 있습니다. pom.xml 에 dependencies 내에 추가해줍니다. <dependency> <groupId>그룹ID</groupId> <artifactId>아이팩트ID</artifactId> <version>버전</version> </dependency> 예를들어 아래와 같이 작성하면 <dependency> <groupId>SARO</groupId> <artifactId>SARO_MOE</artifactId> <version>2.3.1</version> </dependency> 맨위 추가된 file://${basedir}/lib 에 따라 프로젝트경로/lib/SARO/SARO_MOE/2.3.1/SARO_MOE-2.3.1.jar 가 자동으로 추가됩니다. - 자바 Maven