아이디어명 Idea Name
중복된 내용을 도려내고 분산된 내용은 통합하기
아이디어 요약 Idea Summary
서브 모듈 pom.xml에 작성 된 중복 내용을 제거하고 메인 모듈의 pom.xml에 통합
제안배경 Suggestion Background
현재 egovframe-runtime 프로젝트는 메이븐 멀티 모듈 구조를 단순히 서브 모듈을 메인 모듈에 포함하는 용도로만 사용 중.
멀티 모듈 구조의 장점을 충분히 활용하지 못해, 많은 중복 코드가 서브 모듈의 pom.xml에서 나타남.
이 중복을 제거함으로써 멀티 모듈 구조의 장점을 극대화 하고 유지보수성을 좋게 만들고자 함.
기대효과 Expectations
- 스크립트 중복 제거
서브 모듈에서 공통적으로 작성해야 하는 스크립트를 메인 모듈에서 관리하면 추후 새로운 서브 모듈이 추가되더라도 일관성을 유지하기 쉬움.
만약, 공통 스크립트를 사용할 수 없더라도 pom.xml의 스크립트는 오버라이드 할 수 있으므로, 필요한 경우 특정 모듈만 별도로 관리 할 수 있음.
- 속성 값 일관성 유지
모든 모듈에서 공통적으로 사용하는 속성 값 (EX. JDK 버전, 문자열 포맷, 라이브러리 및 플러그인 버전 등)을 메인 모듈에서 관리하면 일관 된 속성 값을 유지할 수 있음.
- 리포트 통합 (부수적 효과)
현재 mvn site명령어를 이용한 리포트 생성은 각 모듈마다 별도로 생성되어 분산됨.
메인 모듈을 활용하면 해당 리포트를 하나로 통합해서 보는 것이 가능함.
자유기술 Free Writing
- 실제로 메인/서브 모듈의 pom.xml을 변경한 결과, 약 2500줄 가량의 스크립트 중복을 제거할 수 있었음.
- 메인 모듈 pom.xml의
distributionManagement 스크립트를 이용해 mvn site site:stage명령어를 통해, 기존의 site 보고서를 각 모듈에 직접 들어가서 봐야 했던 문제를 프로젝트 루트 디렉터리의 target/staging/index.html로 통합해서 볼 수 있었음.
참고문헌 Reference
#243
아이디어명 Idea Name
중복된 내용을 도려내고 분산된 내용은 통합하기
아이디어 요약 Idea Summary
서브 모듈 pom.xml에 작성 된 중복 내용을 제거하고 메인 모듈의 pom.xml에 통합
제안배경 Suggestion Background
현재 egovframe-runtime 프로젝트는 메이븐 멀티 모듈 구조를 단순히 서브 모듈을 메인 모듈에 포함하는 용도로만 사용 중.
멀티 모듈 구조의 장점을 충분히 활용하지 못해, 많은 중복 코드가 서브 모듈의 pom.xml에서 나타남.
이 중복을 제거함으로써 멀티 모듈 구조의 장점을 극대화 하고 유지보수성을 좋게 만들고자 함.
기대효과 Expectations
자유기술 Free Writing
distributionManagement스크립트를 이용해mvn site site:stage명령어를 통해, 기존의 site 보고서를 각 모듈에 직접 들어가서 봐야 했던 문제를 프로젝트 루트 디렉터리의 target/staging/index.html로 통합해서 볼 수 있었음.참고문헌 Reference
#243