(Maven을 처용 사용하시거나, eclipse에 Maven 부터 설치 해야한다면 링크를 클릭하세요!)
링크를 통해서 Maven의 기본 Repository와 연동이 완료 되었다면 프로젝트를 Maven 프로젝트로 만들면
Maven을 통해 편리하게 라이브러리를 추가하고 사용과 관리가 가능해집니다.
또한 프로젝트 코드의 의존성(응집력 이라고도 하죠..)을 줄여줄 수 있습니다. 프로젝트를 진행하면서 Java라이브러리를 사용하는 것이 거의 필연적인데..
이때 라이브러리의 버전 관리와 의존성을 손쉽게 관리 할 수 있죠.
그러면 1차 목표인 Maven을 이용해 Dependency를 추가하여 라이브러리를 사용해봅니다.
가장 먼저 사용하고자 하는 Dependency가 있어야겠지요. 이번 포스팅에서는 스프링 프레임 워크에서 많이 사용하는 쿼츠(quartz)를 Maven을 이용해서 추가하는 예시를 진행해보겠습니다.
우선 프로젝트를 우클릭하여 Add Dependency를 클릭합니다
다음과 같은 대화상자가 나타납니다. 위에서 언급했듯이 quartz 추가할 것이므로 라이브러리 검색을 합니다.
최초에는 빈칸으로 나와야 정상입니다. 가장 하단에 찾고자하는 라이브러리의 이름이나 주소를 입력하시면
그림처럼 Search Result에 결과들이 나옵니다.
만약 나오지 않는다면 해당 글 최상단의 '링크' 를 클릭해주세요
사용하고자 하는 라이브러리를 선택하였다면 화살표를 눌러줍니다.
그러면 사진처럼 해당 라이브러리의 버전별 jar파일 리스트가 보입니다.
필요로 하는 버전을 클릭하고 OK를 누르면 라이브러리가 간단히 추가 됩니다.
만약 추가를 했을때 에러가 난다면, 아주 높은 확률로 해당 라이브러리를 사용할 수 없습니다.
이유는 여러가지 이지만, 라이브러리와 Java 버전이 호환되지 않을 수도 있으며
해당 라이브러리를 사용하기 위해 다른 라이브러리가 필요하다면(다른 라이브러리를 의존하는 라이브러리) 에러가 나는.. 논리적인 이유이므로 이런 경우 스스로 해결을 하셔야합니다.
자 이제 라이브러리가 추가되었다면 정말로 잘 추가 되었는지 확인해보겠습니다.
위 과정은 단순한 확인을 위한것 이므로, 실제 사용에는 꼭 확인을 해야할 필요는 없습니다.
=> 라이브러리 추가 후 코딩할 때 자연스럽게 import가 잘되면 상관없다. 이런 뜻이죠 ㅎㅎ
익숙한 Bulid Path에 들어가보시면..
Maven Dependencies 폴더에 우리가 방금 추가한 quartz가 나타나야 합니다.
Maven을 처음 배울때는 Pom.xml에 Dependeny를 직접 타이핑해서 추가하는 방법을 배우기도 하는데요(제 경우에는..)
그렇다면 논리적으로도 pom.xml에도 같은 Dependency가 당연히 추가되어 있어야합니다.
pom.xml도 확인을 해봅니다.
잘 추가 되어있는것을 확인 할 수 있습니다.
그럼 논리적으로.. 거꾸로 생각해서..
pom.xml에 우리가 Dependency 정보를 추가해도 라이브러리가 추가 되는건가? 라는 의문을 가지는 분도 있습니다.
=> 네 맞습니다 당연히 됩니다.
대신 XML문법에 맞게 잘 적어주셔야 하며.. 공식 Maven Repository주소인 https://mvnrepository.com/ 에서 라이브러리를 검색하고.. Maven을 눌러서 복붙해도 됩니다.
보통 스프링 서버를 구축하는데 필요한 라이브러리가 일정 패턴으로 정해져 있어서.. pom.xml을 따다가 전체 복붙해서 쓰는 경우도 굉장히 많긴하죠..
덧 2019년)
그치만.. 낡은 Maven에서 편리하고 빠른.. 장점이 훨신 많은 Gradle로 넘어가길 추천드립니다. Gradle을 놔두고 Maven을 아직도 쓰는건.. 익숙함말고는 장점이 없다고 봐도 무방하니까요.
그렇다면 프로젝트에서도 잘 import되는지를 확인해봐야 겠지요?
import되며 사용이 가능했습니다.
이상입니다!
'디버깅 > Spring mvc (Maven, Mybatis)' 카테고리의 다른 글
스프링 프레임 워크(Spring Framework) - 3. 개발 환경(3) (0) | 2017.08.01 |
---|---|
스프링 프레임 워크(Spring Framework) - 2. 개발 환경(2) (0) | 2017.08.01 |
스프링 프레임 워크(Spring Framework) - 1. 개발 환경(1) (0) | 2017.08.01 |
[Maven] dependency 추가시 에러처리 index downloads are disabled search results may be incomplete (3) | 2017.03.30 |
[Spring] No bean named 'memService' is defined 오류 디버그. 해결 (0) | 2017.03.25 |