-
728x90
전자정부 표준프레임워크 기반 프로젝트를 시작할 때 반드시 알아야 할 개발환경 구성 요소와 실행 환경 세팅, 빌드 도구, 배포 구조까지 실무 관점에서 종합적으로 정리합니다.
1. 왜 개발환경 구성부터 전략적으로 접근해야 하는가?
전자정부 표준프레임워크는 단일 라이브러리나 템플릿이 아닙니다.
IDE, 실행환경, 빌드 시스템, 배포 구조까지 함께 구성되어야 하는 복합적인 개발 체계입니다.많은 초보 개발자나 SI 현장에서는
- Eclipse를 그냥 설치하고
- 생성기에서 프로젝트만 만들고
- Maven으로 빌드만 하면 끝이라고 생각합니다.
그러나 실제 공공 프로젝트에서는 이 구성 하나로
개발 속도, 유지보수 품질, 배포 안정성, 감리 대응 수준이 모두 결정됩니다.
2. 필수 개발환경 요소 총정리 (2024 기준)
필수 소프트웨어 및 도구 버전
구성 요소 추천 버전 (2024년 기준) 비고
JDK JDK 8 이상 (4.1~), JDK 11~17 (4.3) OpenJDK 권장 IDE Eclipse 2021-09 이상 또는 Spring Tool Suite 4.x 표준 생태계 중심 빌드 도구 Maven 3.6 이상 Gradle은 실무 적용 희소 WAS Apache Tomcat 9 이상 (Servlet 3.1+) 4.x 필수 조건 DBMS Oracle, PostgreSQL, MySQL 모두 호환 JDBC Driver 설치 필수 ※ 3.10 이전 버전은 JDK 7, Spring 4.x에 맞춰 환경을 설정해야 하며, 최신 OS에서는 의도치 않은 호환성 문제가 발생할 수 있습니다.
3. 프레임워크 설치 방법 요약
1) Eclipse + eGovFrame Plugin 설치
- Eclipse Marketplace에서 “전자정부 표준프레임워크 Plugin” 설치
- New → eGovFrame Web Project 실행
- 프레임워크 버전, 모듈 선택, DB 연동 여부 설정 후 생성
- Maven repository 연동 및 pom.xml 초기화 진행
- 로컬 Tomcat 연동 및 실행 확인
⚠️ 표준 프로젝트 템플릿은 4.x 기준으로 구조가 다르므로 반드시 버전을 확인하고 설정해야 함
4. Maven 기반 빌드 구조 이해
전자정부 프레임워크는 Maven Multi-Module 구조로 빌드됩니다.
일반적으로 다음과 같은 구성으로 이루어져 있습니다:parent-pom/ ├── web/ ├── core/ ├── common/ └── batch/ (선택)
주요 특징
- parent-pom이 모든 모듈을 제어 (의존성 통합, 빌드 설정)
- web은 컨트롤러 및 JSP 포함
- core는 Service, DAO, VO 중심 로직
- batch는 Quartz/Job 기반 배치 모듈 (3.8 이상부터 자주 사용됨)
✅ pom.xml 내 의존성 설정을 정확히 맞춰야 배포 시 라이브러리 누락 오류를 방지할 수 있음
5. 실행/배포 구조 개요
전자정부 프레임워크는 아래와 같은 WAR 기반 배포 구조를 채택합니다:
- WAR 방식:
Maven build → .war 생성 → WAS(Tomcat/WebLogic 등)에 배포 - JAR 방식 (4.x 일부 실험적 시도):
Spring Boot 기반 구조로 java -jar 실행 가능
단, 아직 대다수 공공 SI는 WAR 배포를 선호
배포 전략
환경 주요 방식 설명
개발 Eclipse → Tomcat 연동 빠른 수정/테스트 목적 스테이징 Jenkins 또는 수동 배포 DB 마이그레이션 포함 운영 검수 완료된 .war만 배포 배포 이력, 로그 기록 필수
6. 배포 시 자주 발생하는 오류와 대응법
오류 유형 원인 대응 방안
JSP 오류 Java 17 이상 사용 + JSP 호환 안됨 Tomcat JSP 엔진 별도 설정 필요 한글 깨짐 server.xml 인코딩 설정 누락 URIEncoding="UTF-8" 설정 필수 라이브러리 충돌 pom.xml 중복 정의 의존성 범위(scope) 명확히 분리 로그 출력 안 됨 logback/log4j 설정 미흡 공통 로그 설정 확인 및 적용
7. 운영 서버와 개발 서버 구조 차이
공공 프로젝트는 운영서버 배포 기준이 엄격합니다.
- 로그 위치
- DB 계정 분리
- URL 접근 제어
- 공공망 인증서 연동 등
프레임워크 기반이라도 운영 환경에선 별도의 보안 가이드와 WAS 설정 가이드를 따라야 하며,
이는 프레임워크가 모든 걸 자동화하지는 않음을 의미합니다.
결론 – 프레임워크는 설치보다 설계가 중요하다
전자정부 표준프레임워크 프로젝트는
Eclipse로 생성만 하고 끝나는 구조가 아닙니다.설치 이후의
- Maven 구조 해석
- 로그 설정
- 배포 전략 수립
- 오류 대응 체계
까지 개발 환경 구성 자체가 프로젝트 품질을 좌우합니다.
따라서 6화까지의 흐름을 따라오신 분들은
이제 단순한 프레임워크 사용자가 아니라
‘공공 SI 기반 설계자’로의 첫걸음을 떼었다고 볼 수 있습니다.
다음 화 예고
👉 전자정부 표준프레임워크 시리즈 7화 – 프로젝트 생성기 구조 분석: 자동 생성 코드의 진짜 의미와 실무 활용 전략
728x90'기술과 산업 > 언어 및 프레임워크' 카테고리의 다른 글
FastAPI 시리즈 8화 - 의존성 주입 시스템(Depends) 실전 활용법 (0) 2025.05.09 Spring Boot 시리즈 28편 – 예외 처리 전략 고도화: 에러 응답 표준화와 API 일관성 유지 (0) 2025.05.09 Java JSON 처리 실전 시리즈 1화 – Jackson vs Gson: Java JSON 라이브러리 비교와 선택 기준 (1) 2025.05.09 Jmix 실전 마스터 시리즈 1화 - Jmix란 무엇인가? CUBA의 진화, Spring Boot의 확장 (0) 2025.05.07 JHipster 시리즈 3화 - JDL을 이용한 Entity 모델링과 CRUD 생성기 실습 (0) 2025.05.07