추천강의

Maven 메이븐 추천 강의

알지오 2017. 11. 7. 17:05

알지오 평생교육원 Maven 메이븐 강좌입니다.


전문가들이 뽑은 꼭 배워야하는 실무활용 강의

그동안 찾던 Maven 메이븐 강좌의 완전판 !

여러분의 마지막 강의가 되어드리겠습니다.


알지오에서는 PC와 스마트폰, 태블릿을 이용해서 언제, 어디서나 공부를 할 수 있습니다.

열심히 공부해서 Maven 메이븐 강좌를 마스터해보세요.


<Maven 메이븐 강좌 샘플동영상>



<Maven 메이븐 강좌 리뷰>


알지오 평생교육원에서 메이븐 강의를 들었습니다.

학교에서 강의 시간에 배운 것 보다 알지오에서 강의 통해 더 자세하고 전문적으로 배웠어요.

사실 요즘 교수님들도 프로그래밍에 대해서는 잘 모르는 것 같아서 

학교 강의에서는 대부분 이론적인 것만 공부를 했었는데

알지오 강의는 실무 위주의 예제중심 강의여서 정말 좋았습니다.

기초적인 이론부터 예제실습 가지 완벽한 강의 이었습니다.



Maven 메이븐 강좌 정보입니다. 추천 인터넷 강의 : 알지오


  • 01.46분 Maven 기본

    Maven 탄생 배경, Maven 주요 기능 및 사용시 이점, 이상적인 개발환경, Maven Archetype 프로젝트 생성, Maven 기본 명령어

    책갈피 : [00:08] Maven 탄생 배경/[00:28] 빌드 툴에 관심을 갖은 이유/[02:00] 빌드 툴-메이븐을 많이 사용/[02:28] 프로젝트 개발 환경 구축/[02:38] 통합 개발 환경 구축/[02:53] 형상 관리 툴 구축/[03:06] CI 툴 구축/[04:15] 효율성 극대화/[04:46] 프로젝트 간 의존관계/[05:15] 재사용성을 높이기 위한 시도/[06:00] 프로젝트 간 의존관계 그림 확인/[06:30] 프로젝트의 복잡도와 유지보수 비용증가의 문제점 발생/[07:44] 오픈소스 프레임워크의 활용 증가/[08:18] 프로젝트 사용 라이브러리의 의존관계/[09:54] 문제점들을 자동으로 관리해주는 빌드 툴 사용/[10:31] Maven의 주요 기능/[11:09] Maven 사용 시 주요 이점/[11:20] 편리한 의존 관계 라이브러리 관리 기능/[11:33] 일관된 디렉토리 구조와 빌드 프로세스 유지/[11:58] 다양한 플러그인 활용/[12:31] 프로젝트 템플릿의 제작/[13:15] 메이븐과 앤트의 비교/[15:03] 이상적인 개발환경/[15:54] 개발환경 설치 자동화/[18:02] 프로젝트 초기 구축 자동화/[21:26] 지속적 통합 툴을 활용한 자동화/[22:18] CI 툴을 사용할 경우/[23:11] 자동화된 빌드 스크립트/[24:18] 메이븐 설치/[25:03] Maven 3.2.3(Binary zip)다운로드/[25:15] 원하는 디렉토리로 복사/[25:37] 압축풀기 후 환경설정/[25:52] 고급-환경 변수 설정/[26:22] 시스템 변수 편집/[26:45] 메이븐 테스트/[26:56] 메이븐 사용을 위해 JDK설치가 필요/[27:26] 메이븐 테스트를 위해 mvn-v 명령어 입력/[28:07] 환경 변수 다시 설정 후 테스트/[28:30] 메이븐 기반의 템플릿 프로젝트 생성/[29:17] Archetype/[29:37] Archetype 만들기 실습/[31:07] 명령의 결과로 만들어진 것이 무엇인지 소스구조 살펴보기/[31:59] 생성되는 경로 확인/[32:22] 폴더 선택해서 생성/[32:59] 해당 디렉토리로 이동/[33:45] groupId가 기본 패키지로 사용/[34:34] groupId 설명/[35:00] ArtifactId 설명/[36:13] pom.xml파일/[36:35] pom.xml 구조 확인/[37:07] packaging태그/[37:35] 메이븐의 기본 명령어/[37:52] 메이븐의 명령어 구조/[38:15] options, goal, phase/[38:45] 메이븐 명령에서 사용할 수 있는 옵션/[40:30] 메이븐의 빌드 실행/[43:15] mvn clean test 실행/[44:37] 컴파일 진행 단계

  • 02.54분 Maven 설정 파일

    Archetype을 이용한 alzio 프로젝트 생성, pom.xml 파일의 구조, 최상위 pom 설정 파일, alzio 프로젝트 디렉토리 구조 바로 잡기

    책갈피 : [00:07] Archetype을 이용한 alzio프로젝트 생성/[00:36] 프로젝트를 생성한 명령어 살펴보기/[00:56] 명령어의 의미/[01:41] ArtifactId 값 확인/[02:20] 지난 시간에 만들었던 firstProject확인/[02:53] 웹 애플리케이션 만들기/[03:07] 프로젝트 생성을 위해 특정 디렉토리 지정/[03:28] 명령어 입력/[03:53] archetypeCatalog옵션/[04:00] 메이븐에서 사용하는 Catalog/[05:00] 해당 명령 실행/[05:30] groupId와 artifactId지정/[06:00] version과 package지정/[06:29] 프로젝트 생성된 것 확인/[07:11] 프로젝트 생성 부분 정리/[08:35] alzio프로젝트 설명/[09:07] alzio프로젝트의 pom.xml파일 열기/[09:56] 프로젝트 생성 후 메이븐 테스트/[10:50] alzio프로젝트에 java디렉토리가 없는 것 확인/[11:35] 프로젝트 생성시 소스코드나 디렉토리 관리 설정 부분/[12:18] 디렉토리에 대한 정보의 저장 위치/[13:00] settings.xml파일/[13:58] 메이븐을 설치하면 기본 제공/[14:28] settings.xml파일 열기/[15:11] 사용자의 설정파일은 사용자 별로 설정/[16:02] 로컬 저장소의 기본 설정/[16:18] 로컬 저장소의 경로 변경/[16:52] localRepository태그/[17:41] pom.xml파일/[18:18] 메이븐 기본 설정 파일/[18:48] pom.xml파일이 아닌 다른 설정파일을 사용할 경우/[19:18] pom.xml파일의 구성/[19:47] Project Relationship설정/[20:22] Project Information설정/[20:45] Build Settings설정/[21:22] Build Environment설정/[22:00] 구성요소를 기반으로 testPom.xml생성/[22:22] 추가적인 요소/[24:07] project라는 구성요소/[24:18] modelVersion/[24:37] groupId/[24:52] artifactId/[25:22] packaging/[25:56] version/[26:26] name/[26:37] dependencies/[27:00] dependency를 설정할 경우/[28:25] 최상위 pom 설정 파일/[29:22] 그림으로 확인/[30:03] 최상위 pom 설정 파일을 확인하는 명령어 실습/[30:48] repositories요소/[31:07] 중앙저장소/[31:41] build 구성요소/[32:00] 각각의 디렉토리 확인/[34:37] sourceDirectory/[34:57] testsourceDirectory/[35:30] outputDirectory/[35:52] testoutputDirectory/[36:12] resources/[36:27] testResources/[36:52] repository/[37:07] pluginRepositories/[37:28] pluginManagement/[39:00] 디렉토리 경로 바꾸기 실습/[39:49] 웹 애플리케이션에 대한 디렉토리가 없는 이유/[40:37] alzio프로젝트 밑에 wepapp디렉토리가 존재하도록 설정/[41:06] pom.xml파일 수정/[41:22] sourceDirectory/[41:52] resources수정/[42:15] plugins를 설정한 이유/[43:30] alzio프로젝트의 구조 설정/[44:28] 두개의 프로젝트 통합/[45:37] 주의할 점/[46:22] 수정하기 전에 경로 확인/[47:37] 웹 애플리케이션에 대한 디렉토리 변경/[48:07] pom.xml파일 수정 후 webapp붙여넣기/[49:07] 프로젝트가 실행되는지 확인/[49:37] 실제로 디렉토리가 생성됐는지 확인/[50:28] target디렉토리/[51:00] classes디렉토리/[51:36] test-classes디렉토리/[52:00] alzio디렉토리/[52:36] surefire-reports디렉토리

  • 03.47분 Maven 라이프사이클 part1

    라이프사이클과 페이즈, 페이즈와 플러그인, 기본 페이즈와 플러그인

    책갈피 : [00:18] 메이븐의 빌드 진행/[00:55] 최상의 폼에 대한 정보 출력/[01:32] 메이븐의 빌드 라이프사이클과 플러그인 알기/[01:49] 메이븐의 라이프사이클과 페이즈/[02:15] ant 빌드 툴 사용 예제/[02:42] target엘리먼트의 의존관계 설정 가능/[03:38] 메이븐의 빌드 단계/[04:25] 메이븐과 ant의 차이/[04:46] 메이븐에서 제공하는 3개의 라이프사이클/[05:15] 메이븐 라이프사이클-기본/[06:00] 메이븐 라이프사이클-clean&site/[06:46] 메이븐에서 제공하는 페이즈/[08:18] 기본 라이프사이클과 clean&site라이프사이클은 독립적으로 실행/[08:37] 기본 라이프사이클 살펴보기/[08:56] compile단계/[09:07] test단계/[09:26] package단계/[10:00] install단계/[10:18] deploy단계/[11:28] clean 라이프사이클 살펴보기/[11:46] clean페이지를 실행할 경우/[12:16] site 라이프사이클 살펴보기/[12:58] site페이즈와 site deploy페이즈/[13:33] 테스트를 위해 알지오 프로젝트의 디렉토리로 이동/[14:01] mvn site명령어 입력/[14:37] site디렉토리-index.html문서 열기/[15:15] 메이븐의 기능은 플러그인을 기반으로 동작/[15:50] 메이븐 플러그인/[16:11] pom.xml파일/[16:52] 메이븐에서 플러그인 사용을 위한 방법/[17:25] 하나의 플러그인에서 여러 작업 수행/[18:11] 설정된 플로그인을 실행하는 방법/[18:47] 예를 들었던 부분 명령어로 입력/[19:41] 플러그인을 쉽게 수행할 수 있는 규칙/[20:00] 버전 생략/[20:56] artifactId에서 플러그인 네임만 명시/[21:41] pluginGroups엘리먼트 아래에 pluginGroup지정/[23:41] archetype:generate명령/[24:33] help:effective-pom명령/[25:30] 해당 플러그인 확인/[27:03] 페이즈와 플러그인의 관계/[27:15] 페이즈/[28:44] compile페이즈를 실행했을 경우/[29:11] 페이즈와 goal의 관계구조/[31:00] compile페이즈 실행/[32:21] 자세한 내용 출력을 위해 mvn test실행/[32:45] 페이즈 실행 순서/[33:15] process-resources단계/[34:22] process-test-resources단계/[34:36] test-compile단계/[34:50] test단계/[35:50] 메이븐 중앙 저장소/[36:22] 각 페이즈의 설명과 설정 방법/[36:37] process-resources와 compile페이즈/[38:00] compile페이즈를 실행했을 경우/[38:37] process-resources페이즈가 실행되는 이유/[39:30] resources엘리먼트를 재정의하는 예제/[39:51] directory지정/[40:22] exclude안의 특정 패턴/[42:37] 경로 확인/[43:07] java파일만 컴파일한다는 의미/[44:21] compiler버전과 java소스코드의 인코딩 설정/[44:50] configuration엘리먼트 사용

  • 04.48분 Maven 라이프사이클 part2 & 의존 라이브러리 part1

    기본 페이즈와 플러그인, 테스트 자원 복사 및 테스트 소스 코드 컴파일, 패키징, 배포, clean, 의존 라이브러리 관리, 메이븐 저장소

    책갈피 : [00:08] 메이븐 라이프사이클 기본 페이즈와 플러그인/[00:43] 테스트 자원 복사 및 테스트 소스코드 컴파일 단계/[01:25] process-test-resources페이즈에서 진행/[02:21] test-compile페이즈에서 진행/[02:51] 실행방법은 mvn test-compile입력/[04:00] test-compile페이즈를 실행할 경우/[05:15] test밑에 resources디렉토리 카피/[05:55] test에대한 resources의 복사 위치/[06:30] test페이즈 실행/[07:00] test페이즈에서 하는 일/[08:22] 의존관계를 가지는 test페이즈를 실행할 경우/[08:45] test실행시 옵션/[09:50] 해당 테스트만 실행 allTest test/[10:11] 여러개 실행 allIntegrationTest/[11:35] 메이븐을 사용하지 않은 프로젝트에서 메이븐을 사용할 경우/[12:31] 메이븐의 속성 설정/[13:03] test skip속성/[15:03] 명령어에 속성값을 설정 하지않는 방법/[15:31] pom.xml설정 파일 이용/[16:29] surefire-plugin을 설정할 때/[17:32] testFailureIgnore엘리먼트의 속성값 true지정/[17:47] surefire-plugin이란/[19:40] 패키징 단계/[20:03] 패키지 페이즈 실행/[20:33] package를 실행하면 의존관계의 test실행/[22:37] war가 실행이 되는 이유/[23:03] war나 jar파일의 생성 위치/[24:26] finalName엘리먼트 설정/[25:03] alzio라는 이름의 디렉토리 생성/[25:41] 확장자는 packaging엘리먼트의 속성/[26:18] finalName주석처리 후 패키지 페이즈 실행/[26:56] alzio-1.0-SNAPSHOT생성/[27:33] 버전의 속성값/[28:45] 배포단계/[29:32] 로컬저장소에 배포할 때 사용하는 인스톨 페이즈/[29:41] 인스톨 실행/[30:14] 필요한 파일 다운로드/[30:41] 저장되는 위치/[31:33] deploy 실행/[32:00] deploy페이즈란/[33:14] clean-빌드한 결과물 제거/[33:45] clean페이즈 실행/[35:04] 다른 페이즈를 실행할 때 반드시 clean실행/[36:29] mvn clean test실행/[36:44] mvn clean package실행/[37:37] mvn clean install실행/[38:42] 기존 프로젝트에서 라이브러리 추가 방법/[41:07] 의존관계에 있는 라이브러리 관리와 추가방법/[41:30] 의존라이브러리 관리 기능/[42:30] 메이븐 저장소/[43:13] 중앙 저장소/[44:28] 원격 저장소/[45:07] 로컬 저장소/[45:46] 메이븐 라이브러리와 저장소

  • 05.49분 의존 라이브러리 part2

    의존 라이브러리 다운로드를 위한 pom.xml 설정 방법, 의존 라이브러리 관리 기능에 대한 동작 방식, 의존 라이브러리 버전 관리 방법, 라이브러리 검색, 라이브러리 검색 후 pom.xml에 추가

    책갈피 : [00:07] 의존 라이브러리/[00:27] 메이븐의 저장소 설정하는 방법 복습/[01:37] 의존 라이브러리 관리 방법/[02:23] alzio프로젝트의 pom.xml파일/[03:00] dependencies엘리먼트/[03:38] pom.xml파일 설정 후 빌드할 경우/[03:53] 다운로드 받는 과정/[05:00] 메이븐 로컬 저장소의 변경 없이 기본 디렉토리를 사용할 경우/[06:00] groupId는 도메인명 사용/[07:00] junit버전이 업그레이드되서 버전을 변경할 경우/[08:11] mvn test 실행/[08:33] 버전을 4.8로 변경해서 test실행/[09:30] Downloading과 Downloaded로 구분지어 메시지까지 출력/[09:58] mvn test 한번 더 실행/[10:41] 다운로드한 라이브러리를 로컬 저장소에서 관리할 때 디렉토리 구조/[11:20] junit라이브러리 존재 확인/[11:43] junit과 junit/[12:31] 의존관계에 있는 라이브러리를 pom.xml을 활용해서 관리/[13:11] 버전관리 시스템으로 공유할 소스코드의 크기가 작다는 특징/[13:50] 프로젝트 소스와 의존관계에 있는 라이브러리는 분리해서 관리/[15:07] pom.xml파일에 저장소를 설정하지 않은 경우/[15:35] 최상의 폼파일 확인/[16:07] repositories엘리먼트/[17:00] 해당 중앙 저장소로 이동할 경우/[17:26] 중앙 저장소의 라이브러리 검색/[18:37] 해당 경로로 이동 후 추가할 라이브러리가 있을 경우/[19:32] mvnrepository사이트/[19:56] junit검색/[20:48] dependency엘리먼트를 pom.xml파일에 설정할 수 있게 문구 출력/[22:33] 의존 라이브러리 버전 관리 방법/[23:26] 해당 버전 제외와 해당 버전 포함/[24:56] junit의 최신버전/[26:21] LATEST나 RELEASE를 넣어 최신버전을 다운받을 수 있게 설정/[27:18] 처음 빌드할 때 중앙 저장소에서 라이브러리 다운/[28:03] 개발중인 라이브러리나 프로젝트는 SNAPSHOT버전명 사용/[29:11] 의존 라이브러리의 적용/[30:30] scope에 test지정/[30:48] 6개의 scope값/[31:03] compile/[31:37] provided/[32:45] system/[33:22] import/[34:28] alzio프로젝트와 의존관계에 있는 라이브러리 의존성 추가/[35:00] mvnrepository에서 라이브러리 검색/[35:52] groupId사용/[36:42] struts검색/[37:07] mybatis검색/[37:37] 검색된 라이브러리 pom.xml에 설정/[38:45] Struts 2 Core추가 설정/[39:22] Struts 2 Spring Plugin추가 설정/[39:57] Struts Taglib추가 설정/[41:59] Spring Context추가 설정/[42:22] Spring TestContext Framework추가 설정/[42:45] Spring Core추가 설정/[43:22] MyBatis추가 설정/[43:52] MyBatis Spring추가 설정/[44:27] 빌드 실행/[44:51] 에러 메시지 확인/[45:24] pom.xml수정 후 빌드

  • 06.49분 의존 라이브러리 part3

    의존성 전이, 의존성 전이 설정 변경, 의존성 스코프와 의존성 전이와의 관계, 속성

    책갈피 : [00:26] 의존 라이브러리 관리/[00:57] 설정한 라이브러리/[02:23] 의존관계로 설정한 라이브러리를 특정 폴더에 복사해주는 플러그인 활용/[03:20] INFO문구를 통해 copy되는 것 확인/[04:00] dependency디렉토리 확인/[05:25] 총 32개의 라이브러리 생긴 것 확인/[05:46] 자바 기반으로 애플리케이션을 개발할 때 외부 라이브러리와의 의존도 변화/[06:30] 의존성 전이 기능/[08:11] struts2프레임워크와 의존관계에 있는 라이브러리 설정 정보 위치/[08:46] pom파일 다운/[09:24] 메이븐 중앙저장소/[09:56] junit 4.9버전 검색/[10:15] pom파일 열기/[11:26] struts core파일/[11:56] pom파일 열기/[13:07] 의존성 전이 설정 변경/[13:20] 의존성 중개/[15:13] 의존성 관리/[16:03] 의존성 스코프/[16:30] 의존성 예외/[16:48] 선택적 의존성/[18:15] 주의점/[18:52] 필요없는 의존관계 설정 제거/[19:11] commons-fileupload-1.3.1을 삭제하고 싶은 경우/[20:44] tree라는 goal제공/[21:52] mvn dependency:tree 명령어 입력/[22:26] 해당 jar파일이 어떤 jar파일과 의존관계가 있나 확인/[23:11] pom파일에서 struts2 core찾기/[23:26] exclusion엘리먼트 추가/[23:48] groupId입력/[24:22] artifactId입력/[24:56] exclusions엘리먼트 추가해야 설정 완료/[25:22] dependency디렉토리 삭제 후 mvn test/[25:41] 라이브러리 복사/[26:03] 에러 확인/[26:36] dependency디렉토리 확인/[27:48] tree goal실행/[28:26] 실제로 보이는 의존관계의 라이브러리가 적은 이유/[28:41] struts2-core의 pom파일/[29:15] 의존성 스코프 설정 변경/[29:52] optional 선택적 의존성/[31:03] 의존성 스코프와 선택적 의존성 기능을 활용해서 의존관계 가능/[31:37] 의존성 스코프와 의존성 전이의 관계/[33:07] scope값으로 표시되지 않고 기호로 표시된 경우/[34:29] 공통으로 나오는 version값/[35:06] 속성값 간결하게 바꾸는 방법/[35:43] 속성/[36:28] properties엘리먼트 설정/[37:19] 버전 속성 지정/[40:36] mvn clean test/[40:57] 메이븐의 예약 설정된 속성/[41:22] pom/project속성/[44:21] settings속성/[45:07] 환경변수 속성/[45:52] 자바 시스템 속성/[46:27] Java System Properties에 대한 표 참조/[46:52] basedir속성

  • 07.52분 메이븐과 이클립스 통합 part1

    메이븐 플러그인 검색 및 사용법, 메이븐 이클립스 플러그인 적용을 위한 개발환경 설정, 이클립스 Indigo 버전을 이용한 알지오 프로젝트 import

    책갈피 : [00:15] alzio프로젝트 이클립스 통합 개발환경에서 만들기/[00:58] 관련 라이브러리가 여러 디렉토리에 분산/[01:38] 메이븐 설정파일을 이용해 이클립스 프로젝트로 변환/[02:13] 이클립스 설명/[03:23] 메이븐 이클립스 플러그인을 제공하는 사이트/[03:46] 메뉴구성 확인/[04:15] 메이븐 이클립스 플러그인 적용 방법/[04:43] pom.xml살펴보기/[06:00] 사용할 플러그인 확인/[06:58] 프러그인 검색 확인 사이트 안내/[09:09] 플러그인 검색 후 goal확인/[09:30] 인스톨 플러그인 메이븐에 적용하는 과정 실습/[10:07] install플러그인 찾기/[10:37] Goals Overview확인/[11:05] Usage/[11:16] Examples/[11:56] Goals확인/[12:22] Usage를 pom.xml에 설정/[12:50] Optional Parameters/[14:35] pom.xml에 설정하는 방법/[15:35] groupId, artifactId, version명시/[16:07] pluginManagement/[18:45] 메이븐 사이트에서 제공하는 플러그인의 별도은 설정 없이 사용 가능/[19:22] 추가 설정이 필요한 경우/[20:22] createChecksum값을 사용할 경우/[20:52] plugins아래에 사용할 plugin추가/[22:00] configuration을 이용해서 Optional Parameters설정하는 방법/[22:22] createChecksum값의 구성 살펴보기/[23:22] plugin아래에 configuration설정/[24:07] Type값 알아보기/[26:00] Required Parameters는 반드시 설정해야하는 인자값/[26:45] war플러그인 설정했던 것 복습/[27:22] warSourceDirectory/[28:25] alzio프로젝트에 메이븐 이클립스 플러그인 적용/[30:00] 빌드/[30:22] .classpath와 .project파일 생성 확인/[30:40] .classpath파일 열기/[31:11] M2_REPO변수/[31:33] 경로 설명/[32:34] 이클립스에서 소스폴더와 빌드한 결과물을 관리하기 위한 경로 설정/[34:00] 이클립스 import/[34:35] 이클립스 워크스페이스에 있는 프로젝트 import/[35:04] alzio프로젝트 선택/[35:20] java Build Path확인/[35:44] M2_REPO의 경로 에러 메시지/[36:29] M2_REPO설정 방법/[38:30] wtp에서 사용 가능한 다이나믹웹프로젝트 생성/[39:05] pom.xml선택/[39:22] 이클립스 플러그인 설정/[40:07] 이클립스 플러그인 사용 방법/[40:37] artifactId입력/[40:57] version입력/[41:49] wtp검색/[42:15] configuration안에 Optional Parameters입력/[42:37] 설정 완료 후 명령어 입력/[43:34] alzio프로젝트에 .settings폴더 생성 확인/[44:57] 버전이 맞지 않을 경우/[45:21] source와 target입력/[45:52] Tomcat사용/[46:52] Tomcat이 다운로드 되어있는 경로 지정/[47:20] Tomcat서버 사용 준비 완료/[47:52] wtp에서 기본으로 제공하는 서버/[48:20] 서버구성 완료 후 alzio프로젝트 구동/[49:09] Run On Server

  • 08.49분 메이븐과 이클립스 통합 part2

    Spring Framewokr과 오픈 소스 이용자들을 위한 메이븐 팁, m2eclipse 플러그인 설치, 메이븐 프로젝트 생성, pom.xml UI

    책갈피 : [00:20] m2이클립스 플러그인을 설치해서 메이븐 프로젝트 생성 실습/[00:41] Spring Framework과 오픈소스 이용자들을 위한 메이븐 팁/[01:47] spring에 연관된 소스코드를 확인하고 싶을 경우/[02:53] 해당 라이브러리를 pom.xml에 의존관계 설정으로 세팅/[03:53] Optional Parameters로 해결/[04:46] 해당 옵션을 pom.xml에 지정/[08:13] 이클립스 메이븐 플러그인/[08:58] m2이클립스 이용/[09:26] 이클립스 버전/[09:45] 인디고 버전을 사용하는 이유/[10:43] m2이클립스 설치/[11:28] General Purpose Tools/[11:50] m2e 설치/[12:22] Restart Now를 눌러서 이클립스 재시작/[12:52] 실제 메이븐 프로젝트 만들기/[13:28] Maven Project선택/[14:46] 프로젝트와 관련된 사항 입력/[16:03] 에러 확인/[16:30] Build Path-Configure Build Path/[18:07] 메이븐 프로젝트 아래 디렉토리/[18:37] pom.xml파일 열기/[18:52] 소스코드 확인/[20:11] .classpath파일 살펴보기/[20:41] M2_REPO설정 방법/[21:26] 이미 생성된 M2_REPO경로 확인/[22:00] non modifiable표시/[22:59] 경로값을 변경할 수 있는 기능 제공/[23:25] settings.xml 파일 열기/[23:52] localRepository의 경로 변경/[24:33] 이클립스-Preferences/[24:45] User Settings/[25:56] M2_REPO변수 값 확인/[26:29] 프로젝트 테스트/[27:30] 명령창에 명령입력/[28:18] 빌드 시간이 오래걸린 이유/[29:30] junit jar를 dependency에 추가하는 작업/[30:22] 플러그인을 연동하는 설정/[30:33] build엘리먼트 선언/[30:52] plugins에 복수개의 plugin지정/[31:33] configuration을 이용해 옵션값 지정/[32:22] wtpversion과 wtpContextName입력/[33:45] Run As-Run Configurations/[34:43] 에러 발생/[35:30] 버전 일치/[36:07] 다시 빌드/[36:21] 에러 내용 확인/[36:45] 해당 라이브러리 삭제 후 JRE System Library추가/[37:45] Tomcat Server/[38:15] 서버 세팅 완료 후 실행/[38:58] Run Maven Build/[39:22] 404에러가 발생한 이유/[39:45] pom.xml파일 각 탭의 기능/[41:21] Dependencies/[42:07] Dependencies와 pom.xml의 연동/[42:30] Dependencies에서 라이브러리 추가/[43:05] spring-core라이브러리 추가/[43:37] 해당 기능이 유용한 경우/[45:30] 의존관계 설정을 자동화한 경우/[46:15] Dependency Hierarchy/[46:43] 프로젝트의 Hierarchy구조와 의존관계에 있는 라이브러리 파악/[47:22] Effective POM/[47:51] pom.xml/[48:12] m2eclipse 플러그인을 이용해서 얻을 수 있는 장점

  • 09.56분 이클립스 최신 버전 세팅 & 데이터베이스 연동 part1

    이클립스 최신 버전인 Luna 버전으로 메이븐 프로젝트 생성, SQL 플러그인 설정, SQL 플러그인 적용을 통한 자동 SQL문 실행, SQL 플러그인과 메이븐 페이즈 연동

    책갈피 : [00:52] 이클립스 최신버전인 Luna버전/[01:07] 인디고 버전으로 실습했던 이유/[01:48] Luna버전으로 메이븐 프로젝트 생성 실습/[02:12] Luna버전의 첫 화면/[02:23] 폰트크기 설정/[02:59] 자바 세팅/[03:29] 최신버전 지정/[03:53] Tomcat서버 지정/[04:15] 메이븐 프로젝트 만들기/[04:46] 프로젝트와 관련된 사항 입력/[06:14] Build Path에 자바 설정 확인/[07:00] Classpath Variables/[07:46] User Settings-Repository경로 변경/[08:11] xml이 .m2밑에 위치하는 경우/[08:54] 경로 변경/[10:03] 빌드 작업/[10:41] pom.xml동기화/[11:45] 업데이트 프로젝트/[12:39] 전에 생성한 alzio프로젝트 구성과 지금 생성한 alzio프로젝트 구성 비교/[13:50] webapp폴더에 jsp파일 만들기/[14:31] 빌드/[14:52] 데이터베이스 연동 알아보기/[15:24] 데이터에대한 단위테스트를 실행할 때 오류가 생기는 이유/[16:36] 문제점 해결을 위한 메이븐 설정과 적용 방법/[17:36] 데이터베이스용 테스트를 자동화하기위한 개발환경 설정/[20:11] DBA의 데이터베이스 변경 권한/[22:41] SQL플러그인을 활용해 데이터베이스 통합 실습/[23:21] My SQL사용/[23:37] 고려해야할 사항/[24:11] SQL플러그인/[24:36] SQL파일에 대한 설정을 하고 사용/[25:00] 사이트에서 SQL플러그인 검색/[25:18] Usage확인/[25:29] Goals확인/[26:03] pom.xml파일에 SQL플러그인 추가/[26:30] Usage 보며 설정/[27:14] groupId입력/[27:45] artifactId입력/[27:59] version입력/[28:41] dependencies선언/[28:56] 사용할 데이터베이스 정보 입력/[29:37] configuration선언/[30:18] 데이터베이스에 대한 접속정보 입력/[30:26] driver설정/[30:48] url설정/[31:29] username입력/[31:48] password입력/[32:07] autocommit입력/[32:37] srcFiles입력/[34:50] 실행할 SQL문이 srcFile엘리먼트에 저장/[35:34] 빌드-Run Configurations/[35:51] 빌드가 실행될 경로 지정/[36:22] SQL파일을 만들고 쿼리문을 입력한 후 빌드명령 수행/[36:49] 파일 생성/[37:21] drop table if exists alzio의 의미/[38:15] 생성할 alzio table의 값 입력/[38:52] insert into를 사용해 데이터 입력/[39:43] SQL실행을 위해 My SQL구동/[40:30] mysql 접속 후 데이터베이스 선택/[41:22] table명 변경/[41:37] 빌드 수행/[42:49] mysql창으로 이동해서 확인/[43:07] 데이터 확인을 위한 명령어 입력/[44:00] 문제점 확인/[44:35] pom.xml파일 특정페이지에 sql플러그인에 goal연결 설정/[46:07] test를 실행하기 전에 sql:execute goal실행/[47:07] executions의 Usage확인/[47:49] configuration밑에 executions선언/[47:58] phase입력/[48:12] goals입력/[48:34] 빌드 수행/[49:05] sql문 변경 후 다시 빌드/[49:35] web.xml파일 복사 붙여넣기/[50:00] 빌드/[50:15] execution에러 해결/[51:19] execution에러 해결 팁/[52:00] Preferences-Lifecycle Mappings/[52:45] metadata입력/[54:06] 업데이트 프로젝트

  • 10.49분 데이터베이스 연동 part2

    SQL 플러그인과 메이븐 페이즈 연동, SQL 플러그인을 활용한 DB 삭제, 생성, 스키마 생성, db-migration 플러그인 활용

    책갈피 : [00:06] execution등록의 의미/[00:40] 메이븐 페이즈와 골 연결 작업은 executions엘리먼트로 설정/[01:26] 이클립스 pom.xml에 설정한 내용 확인/[02:22] pom.xml파일 수정/[02:37] goals아래에 configuration등록/[02:44] srcFiles입력/[03:28] 쿼리문이 들어있는 sql파일의 위치/[04:00] table 생성/[04:46] Run Configurations/[05:14] 빌드 진행/[05:41] 메시지의 의미/[06:15] mysql을 통해 실제 데이터가 잘 들어갔는지 확인/[06:46] alzio_user2조회/[08:03] sql플러그인의 또 다른 적용 실습/[09:16] 데이터가 없는 상태로 테스트를 진행하고 싶을 경우/[10:07] sql플러그인을 활용해서 실습/[10:24] pom.xml파일의 url부분 확인/[10:52] 데이터베이스 삭제/[11:39] execution등록 후 id입력/[11:50] phase입력/[12:11] goal에 execute지정/[12:43] configuration의 url지정/[13:15] drop database에서 하는 일/[13:45] sqlCommand엘리먼트/[14:46] 데이터베이스 만들기/[15:41] configuration의 url지정/[16:07] 쿼리문 지정/[16:41] sql문 실행 등록/[17:00] 빌드 수행 살펴보기/[17:52] alzio데이터베이스가 만들어졌으면 table생성/[19:03] 페이즈 확인/[19:48] 빌드 수행/[20:15] 메시지 확인/[21:29] mysql로 확인/[21:48] 테이블 확인 후 데이터 조회/[22:32] 다시 테스트 수행/[23:07] 다시 빌드/[23:22] 에러 확인/[24:56] mysql로 실행/[25:47] 데이터베이스에대한 모든 과정을 통합해서 얻는 장점/[27:22] db-migration플러그인/[28:17] db-migration플러그인을 사용하기 위해 플러그인 저장소 추가/[28:41] pom.xml파일에 pluginRepositories추가/[28:56] id값과 url값 입력/[29:45] 플러그인을 위한 설정/[30:22] db-migration플러그인 설정/[30:32] groupId입력/[30:45] artifactId입력/[30:59] 버전 입력/[31:18] 데이터베이스 접속정보 입력/[32:21] 접속할 jdbc드라이버와 데이터베이스 접속/[33:30] 에러 확인을 위해 빌드/[34:57] db-migration플러그인에서는 sql문이 실행되는 경로 지정/[36:30] db-migration용 sql파일 만들기/[37:30] sql파일이 생긴 이유/[38:37] sql문의 내용은 alzio-schema.sql복사/[38:57] mysql에서 drop database alzio명령 입력/[39:28] 실제 빌드명령 입력해서 빌드/[39:52] 에러메시지 확인/[40:44] 빌드 수행/[41:28] mysql을 통해 확인/[42:04] schema_version테이블이 하는 일/[43:07] 빌드 수행/[43:22] 빌드 메시지 확인/[44:22] schema_version테이블 조회/[44:52] 특정 컬럼이 필요하지만 테스트 데이터가 존재해서 테이블을 삭제할 수 없는 경우/[45:20] Run Configurations에 sql파일문 만들기/[45:45] alter table구문 입력/[46:29] pom.xml파일에 executions입력/[47:07] 데이터베이스 통합시 고려할 점

  • 11.47분 프로파일 이해 및 설정

    빌드 이식성, 프로파일 설정 기본, 프로파일 activation 설정, 프로파일 관리를 위한 설정 파일, 프로파일을 이용한 서버 형상 별 리소스 관리

    책갈피 : [00:05] 메이븐의 프로파일기능과 배포기능/[00:26] 이식성의 개념/[00:57] 이식성의 특징/[01:36] 빌드 이식성/[03:07] 프로파일기능 제공/[03:30] pom.xml파일 열기/[03:51] 프로파일 추가/[04:11] id입력-local/[04:15] properties엘리먼트 입력/[05:13] 개발서버에 대한 데이터베이스 접속정보 입력/[05:39] ip입력/[06:12] 운영서버 입력/[07:00] 엘리먼트들 살펴보기/[07:27] profile이 갖는 고유의 id값/[07:46] 메이븐 명령의 -p옵션으로 profile id전달/[10:48] profile엘리먼트 아래에는 모든 엘리먼트 설정 가능/[11:09] build엘리먼트/[12:46] Test_profile_build/[13:22] 자주 사용하는 프로파일의 설정값을 메이븐의 기본 속성값으로 설정/[14:05] 설정값 복사해서 properties엘리먼트에 입력/[15:09] 프로파일 activation기능/[15:56] activation엘리먼트 설정/[16:11] activeByDefault엘리먼트/[16:22] jdk버전 명시/[17:07] activation엘리먼트를 활용할 경우/[17:56] jdk엘리먼트 값/[18:26] 범위값으로 설정 가능/[19:32] 작성한 프로파일 삭제 후 프로파일 새로 작성/[19:41] activation설정/[20:18] os엘리먼트 설정/[20:56] property설정/[21:22] file설정/[21:48] exists엘리먼트와 missing엘리먼트/[22:47] 하나의 옵션만 일치하는 값이 있다면 local프로파일 실행/[23:00] 프로파일 관리를 위한 설정 파일/[24:48] 제한을 두는 이유/[26:03] 실습 진행을 위해 activeByDefault값을 true로 설정/[26:32] 빌드 실패의 이유/[27:15] WEB-INF폴더 생성 후 web.xml파일 생성/[27:37] 빌드 후 프로파일이 어디서 적용됐는지 확인/[28:00] 명령어 입력/[29:03] 프로파일 추가/[29:51] 프로젝트에 적용된 모든 프로파일을 확인하고 싶을 경우/[30:41] 프로파일 기능을 활용한 리소스 관리/[31:48] src/main/resources디렉토리/[32:07] 디렉토리 추가/[32:35] 디렉토리 분리/[33:06] pom.xml파일에 설정/[33:21] build에 resources선언/[33:37] resource에 directory선언/[34:27] excludes에 exclude선언/[35:00] directory선언 후 변수 입력/[36:07] profile선언/[36:52] properties에 env엘리먼트 선언/[39:05] 기본 프로파일은 local프로파일로 지정/[39:52] 이클립스 플러그인의 이클립스 goal을 수행하는 빌드/[40:57] alzio프로젝트 선택/[41:20] 빌드명령 입력/[42:00] src/main/resources-local디렉토리 추가된것 확인/[43:52] 빌드/[45:22] 소스코드 개발 환경/[47:08] 배포환경별로 디렉토리를 나누어 관리

  • 12.48분 배포 자동화 설정 및 리포팅 기능 part1

    톰캣 manager 설정, 톰캣 자동 배포 실습, 소스코드 리포팅 기능의 필요성, undercover를 활용한 테스트 커버리지 측정

    책갈피 : [00:05] 배포 자동화/[00:22] 소스코드의 버전관리 시스템/[01:03] 지속적 통합툴/[01:48] 배포 자동화를 플러그인을 이용해 pom.xml에 설정/[02:15] tomcat플러그인/[02:44] 플러스인 설정 방법/[03:27] pom.xml에 plugins추가후 plugin설정/[04:23] 각자 개발 환경에 맞는 환경설정/[04:46] configuration엘리먼트 추가후 url설정/[05:42] tomcat서버 기능 중 하나인 manager와 text/[06:11] path엘리먼트 추가/[07:14] server엘리먼트 추가/[07:53] tomcat설정/[08:07] tomcat-users.xml파일 열기/[08:24] role부여/[09:13] 역할 명시/[10:05] role을 매핑할 user지정/[11:24] 매핑하기위한 설정/[11:41] settings.xml파일 열기/[12:11] server지정/[12:37] username과 password입력/[14:26] 빌드하기 위해 빌드 명령어 만들기/[15:07] 빌드를 실패한 이유/[16:41] tomcat서버 구동방법/[17:30] 결과 확인/[17:56] alzio 애플리케이션 확인/[18:17] undeploy/[18:30] 다시 빌드/[19:30] id와 password입력 창/[21:26] 소스코드를 자동 배포하지 않는 설정방법/[22:22] 리포팅 기능을 이용한 문서관리/[22:41] 소스코드 품질/[25:44] 리포트 플러그인을 활용해서 다양한 소스코드 품질 리포트 생성방벙/[26:06] 리포트 생성기능 제공/[27:03] pom.xml파일 설정/[28:10] undercover툴/[28:37] url에 undercover의 repository입력/[29:07] reporting엘리먼트 사용/[29:56] findbugs설정/[30:22] pmd설정/[30:48] jdepend설정/[31:26] 빌드/[31:56] 빌드 실패의 이유/[33:07] 메이븐 버전에 맞는 설정하기/[34:00] pluginRepository설정/[34:37] undercover설명/[36:07] repository 하나 더 선언/[37:37] dependency추가/[38:51] plugins엘리먼트 추가/[39:37] maven-site-plugin의 레포팅을 만드는 역할/[40:00] configuration안에 reportPlugins설정/[40:45] undercover리포트를 생성하기위한 테스트 결과 데이터 만들기/[41:37] site디렉토리 생성된것 확인/[42:15] url호출/[43:15] clean site명령으로 리포트 생성가능/[44:15] undercover의 기능사용 설정/[44:30] undercover에 추가할 수 있는 엘리먼트/[44:45] includes/[45:15] excludes/[46:14] 소스인코딩 설정/[46:30] 포맷 지정/[47:15] 빌드

  • 13.49분 리포팅 기능 part2

    findbugs 설정 및 리포트 생성, 패턴 목록 관리, PMD 설정 및 리포트 생성, ruleset 관리, CPD 활용, jdepend 설정 및 리포트 생성, 소스코드 품질에 대하여

    책갈피 : [00:02] findbugs/[00:26] findbugs설정방법/[01:00] plugin을 추가해서 findbugs추가/[01:57] 빌드 성공/[02:44] findbugs메뉴 생성/[03:07] fidnbugs에서 빌드하는 방법/[03:34] 명령어 입력/[04:08] 명령 수행/[04:53] findbugsXml.xml파일생성 확인/[05:26] findbugs에 대한 상세정보를 알 수 있는 사이트/[06:12] findbugs에 대한 상세한 설정/[06:46] findbugs에 필터링기능/[07:09] findbugs리포트에서 제외할 패턴목록을 추가하는 방법/[07:30] src/main/resources-dv디렉토리에 xml파일 생성/[08:00] FindBugsFilter엘리먼트/[08:22] Match엘리먼트와 Package속성/[09:07] pattern입력/[10:05] pom.xml파일에 bug_ex.xml파일을 읽을 수 있게 설정/[10:33] configuration안에 설정/[10:52] excludeFilterFile/[11:26] 생성한 xml파일 지정/[12:16] 패턴목록을 추가하고 싶을 경우/[12:33] includeFilterFile사용/[13:33] 필터링할 항목은 Match엘리먼트를 이용해 설정/[14:01] 설정값-Bug/[14:39] Package/[15:00] Class/[15:20] 메소드/[15:35] Field/[15:48] Local/[16:00] Or/[16:26] 설정값을 사용한 부분 설명/[17:25] findbugs에 필터링과 관련한 예제 웹사이트에서 제공/[18:03] 빌드 실행/[19:11] bug가 있다면 빌드를 실패하게 설정/[19:26] executions엘리먼트 사용/[19:41] phase설정/[20:00] goal설정/[20:29] 빌드/[21:37] PMD리포트 툴/[22:22] 새로운 플러그인 추가/[23:03] 두가지의 빌드방법/[23:48] clean site수행/[24:21] pmd.html 웹브라우저 통해 열어보기/[25:30] PMD리포트 생성/[25:59] targetJdk설정/[26:15] sourceEncoding설정/[26:37] outputDirectory설정/[26:52] format설정/[27:03] clean site수행/[27:37] 사이트 이동/[28:32] 추가적인 rulesets사용을 위한 설정/[29:03] ruleset선언/[29:52] 빌드/[30:18] 경로 확인/[31:07] pmd.html파일 열기/[31:55] CPD리포트/[33:07] CPD툴 사용방법/[33:30] cpd리포트만을 생성하려면/[34:30] cpd리포트의 기본 설정 변경방법/[35:00] minimumTokens설정/[35:37] 중복코드 추출/[35:52] jdepend리포트 툴/[36:30] 해당 플러그인 추가/[37:05] jdepend빌드하는 명령 만들기/[37:52] 생성된 jdepend-report.html파일 열기/[38:52] Explanation의 경우/[39:37] TC, CC, AC설명/[40:06] TC, CC, AC의 관계/[40:22] Ca, Ce, A설명/[41:37] I설명/[42:34] I의 값 사용방법/[43:22] D설명/[45:22] 외부패키지와의 의존관계를 가질 경우/[45:52] Cycles/[46:37] 순환 의존관계/[47:14] 소스코드 향상을 위한 팁

  • 14.54분 메이븐 모듈 part1

    메이븐 모듈 기능의 필요성, 메이븐 모듈의 주요 개념, 상속, 집합, 의존 관계, 모듈 분리, 소스코드 및 pom 파일 분리

    책갈피 : [00:04] 메이븐의 모듈 개념/[00:50] 모듈기능 지원/[01:26] 상속 개념/[01:59] 메이븐에서 상속기능을 사용하기 위한 방법/[02:37] 부모 pom파일 설정방법 실습/[03:06] pom파일은 project로 시작/[03:43] 폼파일을 새로 생성하거나 수정해서 사용/[03:53] groupId지정/[04:14] artifactId지정/[04:38] version지정/[04:53] packaging지정/[05:24] 부모 pom파일을 이용해서 자식 pom파일설정/[06:28] 자식 pom파일 설정방법/[07:15] parent지정/[08:01] 자식 pom파일은 부모 pom파일을 상속받는다는 의미/[08:28] groupId, artifactId지정/[08:54] version지정/[09:20] 프로젝트를 여러개의 모듈 프로젝트로 나눌 때의 기준/[11:16] 프로젝트를 나누었을 때의 구조/[13:33] 기본값 재정의 relativePath/[14:50] 집합 개념/[15:35] modules엘리먼트 설정/[16:15] 부모 pom파일과 프로젝트의 집합관계 형성/[17:11] 공통영역의 소스코드 변경/[18:11] 의존관계 개념/[19:07] 각 모듈간의 의존관계가 생겼을 경우의 설정방법/[19:29] alzio-core와 의존관계를 갖게되는 alzio-web/[20:25] dependency엘리먼트/[22:15] 모듈을 나눌 때 고려할 사항/[22:51] 모듈 나누기 단계적으로 실행/[23:10] 하위모듈 생성/[24:03] 모듈 생성 방법/[24:33] 이클립스에서 만드는 방법/[25:26] 수동으로 추가하고 설정하는 방법/[26:56] 생성된 프로젝트 확장/[27:22] pom.xml파일 열기/[28:10] webapp삭제/[28:33] 집합관계 설정/[29:10] Run Configurations에 clean test생성/[29:40] 폴더 생성/[30:22] 모듈 추가/[31:03] alzio-web에 pom.xml파일 생성/[31:29] alzio-web-admin에 pom.xml파일 생성/[32:04] parent엘리먼트 이용/[32:50] alzio-web의 pom.xml설정/[33:22] alzio-web-admin의 pom.xml설정/[33:49] 완성된 프로젝트의 구조 확인/[34:30] 소스코드를 자식모듈로 이동/[34:45] webapp이동/[36:00] alzio-web-admin에 webapp붙여넣기/[36:30] 자바소스코드 이동/[38:21] 리소스 이동/[39:45] 리소스를 core와 web에 복사/[40:22] pom설정과 이동, 변경/[40:37] 공통의 pom.xml파일 열기/[41:15] junit/[41:37] struts2/[41:59] spring/[42:22] mybtis/[43:07] war플러그인/[43:44] pluginManagement선언/[44:15] source와 target변경/[45:37] clean test/[46:37] 공통부분을 관리하는 pom.xml생성/[47:00] alzio-web-root폴더 생성후 pom.xml파일 생성/[47:34] alzio pom.xml상속/[48:30] modules추가/[49:22] 상속과 집합/[50:45] artifactId변경/[51:13] relativePath지정/[52:37] 빌드/[52:49] 에러 확인/[53:37] packaging명시/[53:52] 빌드

  • 15.49분 메이븐 모듈 part2

    공통 버전 사용 리팩토링, 이클립스로 모듈 import, 제티 서버 연동 팁, 배치 모듈 추가, 배치 모듈을 위한 배포 및 실행 팁

    책갈피 : [00:04] 메이븐 모듈/[00:15] 공통으로 사용하는 버전/[01:11] 버전을 효율적으로 관리하는 방법/[01:26] 부모 pom파일로 이동/[01:51] properties에 버전 입력/[02:45] 분리 모듈의 버전 변경/[03:22] 빌드 테스트/[03:53] 프로젝트를 여러 모듈로 분리/[04:27] 프로젝트를 분리할 때/[05:41] 프로젝트르르 여러 모듈로 분리할 때 가장 중요한점/[06:15] 이클립스로 모듈 import하는 방법/[07:00] 이클립스를 가져오는 빌드 수행/[07:15] Build Path확인/[07:56] Maven-Existing Maven Projects/[08:30] 디렉토리 선택/[09:09] alzio와 집합관계에 있는 모듈/[09:48] 메이븐 플러그인 기반으로 프로젝트 관리/[10:33] 빌드 테스트/[10:54] 의존관계 설정부분/[11:35] alzio-web-root의 pom.xml파일에 dependencies추가/[12:11] 업데이트 프로젝트/[12:28] Build Path확인/[13:07] 라이브러리 삭제/[13:31] 빌드 수행/[14:26] 이클립스내에서 프로젝트 의존관계 자동설정/[15:54] 제티서버 사용/[16:26] 제티서버를 기반으로 웹 애플리케이션을 개발할 경우/[16:56] 제티서버 연동 pom.xml에 설정/[17:18] dependency추가/[17:41] scope지정/[18:11] 빌드/[18:29] 제티서버 연동을 이용한 프로그래밍 실습/[18:59] source folder생성/[19:48] main에 java와 resources디렉토리 생성/[20:26] 소스코드 추가를 위해 패키지 생성/[20:41] 2개의 클래스 생성/[21:10] JettyWebServerWrapper가 하는일/[21:41] 생성자 만들기/[22:22] 메소드 선언/[23:03] 두가지의 public메소드 구현/[23:44] private메소드들 호출/[24:06] 제티서버 구동/[24:41] JettyLauncher구현/[25:48] 특정 디렉토리와 설정파일에 변경이 발생할 경우/[27:18] 배치모듈 추가 실습/[27:48] 배치모듈이 필요한 경우/[28:41] alzio-batch폴더 생성후 pom.xml파일 생성/[29:07] pom.xml설정/[29:48] 상속을 나타내기 위해 parent선언/[30:32] dependency지정/[31:11] 의존관계 추가를 위해 검색/[31:45] quartz/[32:07] 빌드 테스트/[32:37] Build Path확인/[33:30] 배치모듈을 실행하기위해 의존관계에 있는 라이브러리를 특정 디렉토리로 복사하는 방법/[34:00] 배치모듈의 pom.xml파일 열기/[34:21] 플러그인 입력/[34:58] excution엘리먼트/[35:52] outputDirectory지정/[37:00] 스프링배치를 실행하는 설정/[37:22] 플러그인 입력/[37:51] configuration아래 올 수있는 엘리먼트/[38:36] 빌드 수행/[41:37] 정리/[42:34] 프로젝트를 나눌 때 사용한 개념/[43:45] alzio-web-root모듈/[44:22] 배치모듈 추가 부분/[46:00] 제티서버/[47:52] 스프링배치 실행 과정

  • 16.51분 공통 리소스 중복 제거

    antrun 플러그인을 활용한 리소스 중복 제거, 메이븐의 프로파일을 활용한 리소스 중복 제거, 모듈 배포를 위한 배치파일 제작

    책갈피 : [00:04] 리소스 중복 제거/[01:07] 각 모듈의 불필요한 리소스/[01:34] antrun 플러그인을 활용한 리소스 중복 제거/[01:56] 공통 리소스 파일을 관리하기 위한 모듈 생성/[02:30] alzio-resources폴더생성 확인/[04:00] dv환경에서 로드할 수 있는 리소스를위한 디렉토리 생성/[05:00] 공통의 pom.xml파일로 이동/[05:15] antrun 플러그인 설정과 사용/[06:15] 각 프로젝트 모듈간의 관계 구성/[07:28] alzio-resources에 있는 리소스파일들을 각 모듈로 복사/[08:30] alzio-core의 pom.xml파일에 플러그인 지정/[08:56] antrun plugin검색/[09:18] Usage확인/[09:58] target에 명령 입력/[11:07] artifactId선언/[11:56] version명시/[12:20] execution입력/[12:43] execution아래 엘리먼트 설정/[13:33] run이라는 goal실행/[14:01] target엘리먼트 설정/[14:33] copy명령 입력/[14:58] fileset엘리먼트 선언/[16:37] 공통 pom파일로 이동해서 프로파일 설정 확인/[17:33] alzio-resources에 pom.xml파일생성/[18:03] parent설정/[18:37] artifactId명시/[19:00] 빌드 수행/[20:22] build-main.xml의 내용 확인/[21:52] alzio-core에 했던 설정을 공통의 pom.xml에 설정/[22:52] 빌드 수행/[23:03] 에러 확인/[24:22] properties추가/[25:37] 다른 모듈에 properties재정의/[26:33] 빌드/[26:45] 결과 확인/[27:48] 문제점/[28:30] jar파일을 이용한 공통리소스 중복 제거/[29:45] antrun설정 주석처리/[30:33] clean package로 빌드/[31:45] pom.xml파일의 가장 중요한 profile설정/[32:29] artifactId에 env선언의 의미/[33:34] build의 finalName지정/[33:52] jar파일이 생성되는지 확인/[34:22] 리소스 import/[35:15] 소스구조 확인/[37:14] alzio의 pom.xml 리소스부분/[38:00] jar파일 확인/[38:45] 로컬로 빌드/[39:14] resources설정으로 인해 얻는점/[41:45] 배포가능 상태가된 jar파일을 필요한 모듈에서 의존관계 설정/[42:07] 의존관계 설정을위해 dependency선언/[42:30] version명시/[43:00] 빌드/[43:21] 에러 확인/[44:00] version수정/[45:45] 메이븐 업데이트 프로젝트/[46:34] 빌드/[48:07] 모듈 배포를위한 배치파일 제작/[48:22] 배치파일을 만드는 방법

  • 17.54분 메이븐 사내 저장소 설치 및 활용

    사내 저장소를 적용한 시스템 아키텍처 설명, 사내 저장소 설치, 저장소 설정, 저장소 추가

    책갈피 : [00:05] 메이븐 사내 저장소 설치 및 활용/[01:03] 내부에 메이븐 저장소를 두어 생기는 이점/[03:37] 내부에 메이븐 저장소가 없을 경우의 시스템환경/[03:59] 사내저장소를 적용한 시스템 아키텍처 설명/[04:29] 메이븐 저장소의 종류/[05:12] 로컬 저장소/[05:58] 외부 원격 공개 저장소/[06:09] 내부 원격 사설 저장소/[06:41] 내부 메이븐 저장소로 활용할 수 있는 툴/[07:00] 사내저장소 설치전에 넥서스 설명/[07:54] nexus 설치/[09:03] 넥서스의 최신버전 다운로드/[10:33] war파일 복사후 톰캣 디렉토리의 bin디렉토리로 이동/[11:01] 톰캣 컨테이너 구동/[12:13] Tomcat의 8090포트로 이동/[12:35] 넥서스 페이지 이름 간단하게 변경/[13:09] Tomcat의 server.xml파일에서 설정/[14:18] war파일의 이름 변경/[14:30] Tomcat서버 재구동/[15:18] url로 이동/[15:41] 로그인/[16:03] 패스워드 변경/[16:29] Security-Users/[17:02] Set Password/[17:56] 넥서스의 저장소 설정방법/[18:18] Repositories선택/[18:48] 4개의 타입 존재/[19:18] proxy타입/[20:00] hosted타입/[20:33] virtual타입/[21:15] group타입/[22:18] Public Reppositories와 저장소 group만 설정/[22:48] 넥서스 저장소를 사용하기위한 설정/[23:18] settings.xml파일 수정/[23:41] mirror선언/[24:18] url입력/[25:03] profile설정/[25:36] repository선언/[26:10] releases엘리먼트/[27:07] pluginRepositories선언/[28:06] snapshots선언/[28:33] activeProfiles엘리먼트 설정/[29:10] mirror설정에 대한 설명/[30:03] 새로운 profile을 만들어서 저장소를 설정하는 이유/[31:07] settings.xml수정 후 프로젝트 빌드/[31:22] 에러 확인/[31:56] 다시 빌드 수행/[32:45] alzio의 pom.xml파일 확인/[33:13] localRepository를 지우고 다시 빌드/[33:51] 에러 메시지 확인/[34:29] 넥서스에 해당 라이브러리 사용할 수 있도록 설정/[34:45] Add-Repository에 대한 종류 지정/[34:52] Proxy Repository선택/[35:15] carbonfive설정/[36:07] CarbonFive Plugin Repository생긴것 확인/[36:35] zact설정/[37:04] Undercover Plugin Repository생긴것 확인/[37:43] Public Repositories-Configuration으로 이동/[38:36] 빌드/[40:00] 에러 확인/[40:42] 넥서스에 라이브러리 배포/[41:07] 넥서스 메이븐 저장소에 라이브러리를 배포하는 방법/[42:00] 3rd party-Artifact Upload선택/[42:15] GAV Definition설명/[43:05] jar파일 넥서스에 배포/[44:21] Add one or more artifacts/[44:51] 배포 테스트/[45:37] deploy페이지를 실행해서 사내 원격저장소에 자동으로 배포하는 실습/[46:07] 로컬 저장소에 라이브러리를 배포하는 방법/[48:52] deploy명령을 이용해서 alzio-resources모듈 배포 실습/[49:28] 넥서스의 배포를 담당할 사용자 추가/[50:15] settings.xml로 이동해 서버 추가/[50:52] alzio-resources로 이동해 pom.xml수정/[51:07] 배포할 서버 지정/[51:52] url입력/[52:23] 빌드

  • 18.42분 웹 공통 리소스에 대한 관리 & 표준 pom 파일 제작 part1

    FileSync 이클립스 플러그인 설치 및 활용, antrun 플러그인을 활용한 공통 리소스 복사, 빌드 팁, 표준 pom 파일 제작 요구사항 분석, 표준 pom 설정 프로젝트 제작

    책갈피 : [00:04] 웹 공통 리소스에대한 관리와 표준 pom파일 제작/[00:35] 공통으로 사용하는 웹 자원/[00:56] 웹 공통자원 관리 방법/[01:30] 웹 공통자원의 특징/[03:05] fileSync이클립스 플러그인 활용/[03:36] fileSync이클립스 플러그인 설명/[04:00] fileSync이클립스 플러그인 설치/[04:56] 최신버전 활성화/[05:30] 플러그인 설치 후 이클립스 재부팅/[06:11] 설정을 하기위해 모듈을 이클립스로 import/[06:46] 새 프로젝트 생성/[07:28] alzio-web-root생성 확인/[07:38] Force File Synchronization/[08:01] 파일을 동기화 하기위한 디렉토리 설정/[08:52] 새 폴더 생성/[09:16] Properties-File Synchronization/[10:07] alzio-web모듈의 webapp디렉토리/[11:18] 매핑 설정파일 직접 수정/[12:07] fileSync에 설정되어 있는 설정 속성 확인/[12:33] alzio-web과 alzio-web-admin모듈에 webapp디렉토리 동기화/[13:54] 다양한 방법으로 동기화할 디렉토리 매핑/[14:37] fileSync오류 해결 방법/[15:37] 빌드할때 웹 공통자원을 alzio-web과 alzio-web-admin모듈로 동기화하게 설정/[15:58] antrun플러그인 설정 가져오기/[16:33] 옵션 추가/[17:00] 빌드/[18:17] 빌드할 때의 옵션/[19:03] 에러메시지만 출력하고 싶을 경우의 옵션/[19:26] 표준 pom파일 생성과 리팩토링 과정/[19:44] 표준pom설정 파일제작 요구사항 분석/[20:45] 표준 pom설정 프로젝트 제작/[21:07] 각 모듈간의 상속관계 설계/[22:10] 프로젝트 생성/[22:59] 필요한 모듈 추가/[24:11] pom.xml복사/[24:37] 모듈명만 바꿔서 각각 붙여넣기/[25:47] 각 모듈 설명/[27:37] 각 모듈 상속 집합관계 만들기/[28:29] tpl-parent에 build추가/[29:51] tpl-web-parent변경/[30:41] tpl-domain-parent와 tpl-web-parent를 상속받는 모듈 설정/[32:45] relativePath지정/[34:15] 다른데서 상속받을 수 있는 설정/[34:52] tpl-web-parent설정/[36:06] 상속관계인 모듈이 많을 경우/[37:45] pom설정파일의 변경이 발생할 경우/[38:07] 배포하기 설정/[38:37] clean install/[39:04] 모듈 추가로 인해 집합관계 설정/[39:30] 에러메시지 확인/[40:50] 빌드

  • 19.46분 표준 pom 파일 제작 part2 & 아키타입 part1

    의존 라이브러리 설정 및 관리, 플러그인 설정 및 관리, POM 파일의 효율적인 관리 팁, 아키타입 설명 및 활용, tpl 프로젝트 사내 저장소에 배포

    책갈피 : [00:08] 의존관계 라이브러리 추가/[00:49] tpl-parent의 pom.xml파일에 설정/[01:17] 의존관계를 추가할 수 있는 방법/[01:42] junit추가/[02:30] spring추가/[03:29] 라이브러리 properties속성에 관리/[05:00] tpl-domain-parent에 의존관계 추가/[05:15] spring-core와 spring-beans추가/[06:00] tpl-domain-hibernate에 라이브러리 추가/[06:46] hibernate의존관계 설정/[09:15] 버그가 발생했을 경우/[10:22] tpl-domain-parent확인/[10:46] commons-logging 1.1.3버전/[11:16] tpl-domain-hibernate확인/[11:33] commons-logging의 다른 버전/[11:52] 프로젝트에서 사용하는 라이브러리 버전 고정/[12:13] tpl-parent의 pom.xml파일에 의존관계로 설정했던 모든 라이브러리 설정/[12:28] dependencyManagement입력/[12:58] 주석을 사용해 라이브러리 분리/[13:22] 설정했던 라이브러리 가져오기/[14:31] 빌드/[14:50] 공통의 pom.xml에 dependencyManagement를 사용하지 않았을 경우/[16:07] hibernate의 pom파일에서 의존관계 설정/[16:41] 빌드/[17:07] domain-parent에 의존관계 설정/[18:07] commons-logging에 대한 의존관계 문제/[18:26] commons-logging에 대한 dependency추가/[18:59] commons-logging버전 properties에서 관리/[19:21] 로컬 repository삭제/[19:47] 빌드/[20:41] 버전 바뀐것 확인/[21:22] 메이븐의 dependencyManagement의 기능/[23:37] 의존성 전이 기능 때문에 버전 충돌의 문제점 해결 방법/[24:07] dependencyManagement설정을 활용하는 방법/[24:33] 플러그인 관리 방법/[24:55] 이클립스 플러그인 설정 가져오기/[25:29] 플러그인 아래에 메이븐 이클립스 플러그인 설정/[25:56] configuration엘리먼트 사용/[26:26] downloadSources엘리먼트 사용/[27:02] additionalBuildcommands엘리먼트 사용/[27:44] additionalProjectnatures엘리먼트 사용/[28:47] 플러그인 설정을 tpl-parent모듈과 tpl-web-parent모듈에 분리해서 설정/[29:18] pluginManagement사용/[29:48] web-parent에 플러그인 추가/[31:30] tpl-parent의 pom.xml파일에 플러그인 추가/[32:07] url입력/[33:14] domain-parent의 build에 plugin설정/[34:27] pom파일의 효율적인 관리 팁/[34:52] 리팩토링/[35:22] 리팩토링으로 해결될 수 없는 상황/[38:45] 아키타입 설명 및 활용/[40:00] 나만의 아키타입을 만드는 방법/[40:13] 아키타입을 생성하기전에 분석해야할 내용/[40:52] 예제소스를 포함하는 아키타입과 포함하지 않는 아키타입을 분리해서 제공/[41:35] 생성한 프로젝트를 아키타입으로 자동변환하는 기능/[42:05] tpl 프로젝트 사내 저장소 배포/[42:34] distributionManagement설정/[44:00] Releases사용/[44:27] 스냅샷 추가후 배포/[45:31] 빌드메시지 확인

  • 20.51분 아키타입 part2

    Hibernate를 상속받는 샘플 프로젝트 생성, 샘플 프로젝트 기반 아키타입 생성, 생성한 아키타입 활용, 아키타입 소스 분석, 효율적인 아키타입 생성 및 분석

    책갈피 : [00:06] 아키타입 만드는 과정/[00:33] 샘플프로젝트 생성 후 아키타입 생성/[01:10] 새 프로젝트 생성/[01:59] tpl-samples-ibatis프로젝트 생성 확인/[02:15] java build path/[02:46] pom.xml로 이동해서 상속받는 코드 입력/[03:30] 중복되는 값 제거/[04:15] relativePath설정 부분/[05:15] 샘플소스 만들기/[05:53] tpl-parent의 pom파일에 Ibatis라이브러리 추가/[06:29] ibatis에서 사용하기위해 groupId와 artifactId명시/[06:57] project배포된것 확인/[07:30] 메이븐의 아키타입 플러그인을 활용해서 ibatis프로젝트를 아키타입 프로젝트로 변환/[08:11] 이클립스에서 빌드/[08:26] 빌드 명령어 만들기/[08:56] 명령 실행/[09:20] 에러메시지 확인/[09:39] 외부에 설치된 메이븐을 사용하게 설정하는 방법/[10:31] 변경 후 빌드 수행/[11:15] 하위버전의 플러그인 활용 설정방법/[11:31] pom.xml에 플러그인 설정/[12:45] 아키타입 프로젝트 디렉토리 구조 확인/[14:28] 자동으로 생성된 pom.xml의 내용 확인/[16:07] 아키타입을 메이븐 사내 저장소에 배포/[16:47] 빌드/[17:02] 사내 저장소에 배포되었는지 확인/[17:37] jar-Artifact/[17:56] Checksums/[18:11] Maven버튼 선택/[18:40] 생성한 아키타입을 활용하는 실습/[19:33] 아키타입을 만드는 명령/[20:52] public repositories url지정/[21:29] 이클립스를 통해 아키타입을 활용한 프로젝트를 만들기/[21:41] 새 프로젝트 생성/[22:18] Add Remote Catalog/[22:33] archetype-catalog.xml파일을 이용해 아키타입을 만들 수 있게 지원/[23:52] Add Archetype/[24:55] groupId, artifactId, package지정/[25:52] build path/[26:33] 버전을 맞춘 이유/[28:02] 이클립스 import/[29:21] 메이븐 프로젝트로 변환/[29:48] 아키타입 소스 분석/[30:30] 아키타입의 내용을 변경할 경우/[30:52] 아키타입 소스를 바탕으로 아키타입 프로젝트 이해/[31:15] archetype-resources에서 관리하는 소스코드 배포 가능/[31:52] archetype-metadata.xml파일 열기/[34:22] 주석처리/[34:51] 넥서스에 배포되어있는 아키타입 삭제/[35:27] 넥서스에 변경한 아키타입 확인/[35:52] 새 프로젝트 생성/[36:50] 에러 메시지 확인/[37:30] 주석처리 해제/[37:44] 빌드/[38:07] .settings, .classpath, .project디렉토리 삭제/[39:30] 넥서스에서 아키타입 배포 확인/[40:00] 다시 프로젝트 생성/[41:51] 아키타입 프로젝트 생성시 동적으로 변경되어야 하는 부분/[42:45] pom.xml파일 열기/[46:00] 아키타입을 효과적으로 관리하고 운영하기 위한 팁/[49:00] 표준 pom과 아키타입을 만드는 방법은 요구사항에 따라서 다양하게 가능/[50:15] 자동화된 개발환경을 만들기위한 방법

Maven강의,Maven강좌,Maven교육,Maven학원,Maven인강,Maven인터넷강의,Maven인터넷강좌,Maven동영상,Maven동영상강의,Maven동영상강좌,Maven배우기,Maven사용법,Maven사용방법,메이븐강의,메이븐강좌,메이븐교육,메이븐학원,메이븐인강,메이븐인터넷강의,메이븐인터넷강좌,메이븐동영상,메이븐동영상강의,메이븐동영상강좌,메이븐배우기,메이븐사용법,메이븐사용방법

'추천강의' 카테고리의 다른 글

Hive 교육 강의  (0) 2017.11.07
Oracle 오라클 강좌 교육  (0) 2017.11.07
랩뷰 2009 강좌 리뷰  (0) 2017.11.07
매트랩 [입문+실무] 학원 교육 추천  (0) 2017.11.07
jquery mobile & UI 강의 추천 리뷰  (0) 2017.11.07