English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
이 튜토리얼은 초보자를 위한 것이며, Maven 도구의 기본 기능을 이해하는 데 도움을 줍니다. 이 튜토리얼을 통해 배웠다면, Apache Maven에 대한 중급 수준의 전문 지식을 갖게 될 것입니다. 이제 더 높은 수준으로 진입할 수 있습니다.
Maven은 "전문가", "내사람"으로 번역되며, Apache에서 pure Java로 개발된 오픈 소스 프로젝트입니다. 프로젝트 객체 모델(POM) 개념을 기반으로 Maven은 중앙 정보 단편을 사용하여 프로젝트의 구축, 보고서 및 문서 등의 단계를 관리합니다.
Maven은 프로젝트 관리 도구로서, Java 프로젝트를 구축하고 의존 관리를 할 수 있습니다.
Maven은 C#, Ruby, Scala 및 다른 언어로 작성된 프로젝트를 구축하고 관리하는 데도 사용될 수 있습니다. Maven은 원래 Jakarta 프로젝트의 서브 프로젝트였지만, 현재 Apache 소프트웨어 재단에서 주도하는 독립적인 Apache 프로젝트입니다.
이 튜토리얼은 주로 초보자를 대상으로 하여 Maven 도구의 기본 기능을 배우도록 돕습니다. 이 튜토리얼을 통해 배웠다면, Apache Maven에 대한 중급 수준의 전문 지식을 갖게 될 것입니다. 이후 더 고급한 지식을 배울 수 있습니다.
이 튜토리얼을 읽기 전에, 다음과 같은 기본 지식이 필요합니다:Java 기본.
Maven은 개발자가 다음과 같은 작업을 완료하는 데 도움을 줄 수 있습니다:
건설
문서 생성
보고서
의존
SCMs
발행
배포
이메일 목록
Maven은 일관된 표준 디렉토리 구조를 사용을 권장합니다. Maven은 규칙을 설정보다 우선시하는 원칙을 사용합니다. 가능한 한 이러한 디렉토리 구조를 준수하도록 합니다. 다음과 같이 표시됩니다:
디렉토리 | 목적 |
---|---|
${basedir} | pom.xml과 모든 서브 디렉토리를 저장합니다 |
${basedir}/src/main/java | 프로젝트의 java 소스 코드 |
${basedir}/src/main/resources | 프로젝트의 자원, 예를 들어 property 파일, springmvc.xml |
${basedir}/src/test/java | 프로젝트의 테스트 클래스, 예를 들어 Junit 코드 |
${basedir}/src/test/resources | 테스트에 사용되는 자원 |
${basedir}/src/main/webapp/WEB-INF | 웹 애플리케이션 파일 디렉토리, 웹 프로젝트 정보(예: web.xml, 로컬 이미지, jsp 뷰 페이지가 저장됩니다) |
${basedir}/target | 패키지 출력 디렉토리 |
${basedir}/target/classes | 컴파일 출력 디렉토리 |
${basedir}/target/test-classes | 테스트 컴파일 출력 디렉토리 |
Test.java | Maven은 이름 규칙에 맞는 테스트 클래스 만 자동으로 실행합니다 |
~/.m2/repository | Maven 기본의 로컬 저장소 디렉토리 위치 |
프로젝트 설정은 일관된 규칙을 따릅니다.
모든 프로젝트에서 공유됩니다.
의존 관리에는 자동 업데이트가 포함됩니다.
어느 거대하고 지속적으로 증가하는 라이브러리.
확장 가능하며, Java나 스크립트 언어의 플러그인을 쉽게 작성할 수 있습니다.
새로운 기능에 대한 액세스를 위해 추가 설정이 필요하지 않거나 필요한 경우가 적습니다.
모델 기반 빌드 − Maven은 JAR, WAR 또는 프로젝트 메타데이터를 기반으로 한 배포와 같은 предопределенный 출력 유형에 프로젝트를 빌드할 수 있으며, 대부분의 경우 스크립트를 실행하지 않아도 됩니다.
일관된 프로젝트 정보 웹사이트 − 빌드 과정과 동일한 메타데이터를 사용하여 Maven은 추가 문서를 포함한 웹사이트나 PDF를 생성할 수 있으며, 이를 프로젝트 개발 상태에 대한 표준 보고서에 추가할 수 있습니다.
배포 관리 및 단일 출력 배포 − Maven은 추가 설정 없이 소스 코드 관리 시스템(예: Subversion 또는 Git)과 통합할 수 있으며, 특정 태그를 기반으로 프로젝트를 배포할 수 있습니다. 또한, 분배 위치에 배포하여 다른 프로젝트가 사용할 수 있습니다. Maven은 JAR와 같은 단일 출력을 배포할 수 있으며, 다른 의존성과 문서를 포함한 아카이브 또는 소스 코드로 배포할 수 있습니다.
뒤ward 컴파티빌리티 − Maven의 오래된 버전에서 여러 모듈을 Maven으로 쉽게 이식할 수 있습니다. 3 중.
자식 프로젝트가 부모 프로젝트 의존성을 사용할 때, 일반적으로 자식 프로젝트는 부모 프로젝트 의존성을 상속해야 하며, 버전 번호를 사용하지 않아도 됩니다.
병렬 빌드 − 컴파일 속도가 일반적으로 향상됩니다20 - 50 %。
뛰어난 오류 보고 − Maven은 오류 보고를 개선했으며, 오류의 전체 설명을 확인할 수 있는 Maven 위키 페이지 링크를 제공합니다.
Apache Maven은 소프트웨어 프로젝트 관리 및 이해 도구입니다. 프로젝트 객체 모델(POM) 개념을 기반으로 Maven은 프로젝트의 빌드, 보고서 및 문서를 중앙 정보 관리합니다. Maven을 사용하면 Java 기반의 어떤 프로젝트도 빌드하고 관리할 수 있습니다. 이 튜토리얼은 Maven을 사용하여 Java로 개발하는 모든 프로젝트 개발의 일상적인工作中 사용하는 방법을 가르칩니다.