라이브러리 관리자의 일종.
향후 Spring, Springboot 프로젝트 진행 시 메이븐으로 라이브러리를 관리하게 된다.
Springboot 프로젝트는 둘 중 하나를 택할 수 있다. 메이븐, 그래들.
JSP를 공부하면서 Dynamic Project를 생성해서 실습을 진행했는데,
지금은 메이븐 프로젝트를 생성한다.
순서대로 진행
이 아티팩트ID 값이 프로젝트 명이 된다.
maventest라고 입력했으니 프로젝트 폴더명은 maventest가 된다.
최초로 생성해 본 메이븐 프로젝트의 구조이다.
최초 생성시부터 index.jsp가 생성되어 있고 오류가 나 있는데, 잠시 후 해결해본다.
가장 하단에 있는 pom.xml은 메이븐 프로젝트의 환경설정 파일이다.
이클립스 하단 오른쪽을 보면 로컬 저장소에서 라이브러리를 다운 받는 진행창이 보인다.
에러 표시가 빨갛게 뜬 index.jsp를 해결해보도록 한다.
에러가 난 이유는 프로젝트 폴더의 라이브러리에 아파치 톰캣 라이브러리가 빠져있기 때문인데,
그것을 추가해주면 오류가 해결된다.
메이븐 프로젝트를 우클릭해서 다음과 같은 경로로 진입한다.
Libraries > Add Library... > Server Runtime 선택 후 Next >
Java Resource > Libraries 를 살펴보면 아파치 톰캣이 생성된 것을 확인할 수 있고,
index.jsp의 에러가 사라졌다.
메이븐 프로젝트 생성시 자동으로 함께 생겨난
index.jsp의 내용은 다음과 같다.
메이븐 프로젝트는 위치 별로 저장해야 할 파일의 종류가 정해져 있다.
maventest | src |
main |
java | 확장자가 .java인 파일 ex) Controller, Service, DTO, DAO ... |
|
resources | - MyBatis의 환경설정 파일 - SQL문 파일 (*.xml : mapper 파일) |
||||
webapp |
View 페이지 | ||||
WEB-INF - web.xml | 프로젝트의 환경설정 파일 | ||||
pom.xml | Maven 환경설정 파일 |
pom.xml을 열어보면 dependencies 영역이 있는데,
이 곳에는 의존 라이브러리 라고 불리는 것이 저장된다.
cos 의존 라이브러리를 다운받아 저장해본다.
https://mvnrepository.com/search?q=cos
dependencies 영역에 복사한 내용을 붙여넣고 저장한다.
그러면 라이브러리에 cos가 추가된다.
이렇게 추가된 라이브러리는 다음과 같은 경로에 위치한다.
이 곳을 로컬 저장소 라고 부른다.
라이브러리 다운이 잘 안되는 경우가 종종 발생하는데,
그럴 때에는 로컬 저장소의 내용을 지우고 이클립스를 새로 실행한다.
그러면 추가되어 있는 라이브러리를 자동으로 다운 실행한다.
오라클 라이브러리에서 에러가 발생하는 경우가 많다고 해서
이것을 추가해보았다.
역시 오류가 발생한다!
그 외 mysql, mybatis, jstl도 추가해봤는데 오라클 jdbc만 오류가 발생한다.
결국 파일을 공유 받아서 해결했다.........!
이번에는 export, import를 해본다.
export를 했다가 다시 import를 하면
메이븐 프로젝트가 아닌 다이나믹 프로젝트로 풀려버린다는 문제점이 있다.
여태까지는 이클립스 내의 export를 이용해 war 파일로 export 하였다.
메이븐 프로젝트는 그런 기능이 아니라 그냥 폴더를 복사하여 원하는 곳에 붙여넣기 하는 식으로 이동한다.
이것을 import 할 때에는 다음과 같은 과정을 거친다.
그러면 다이나믹 프로젝트가 아닌 원래의 메이븐 프로젝트로 잘 import 된다.