setting.xml은 주로 Maven의 실행 환경과 같은 일련의 일반적인 속성을 구성하는 데 사용되며 전역 수준 구성 파일입니다. POM.XML은 주로 프로젝트의 Maven 좌표, 종속성, 개발자가 따라야하는 규칙, 결함 관리 시스템, 조직 및 라이센스 및 기타 모든 프로젝트 관련 요소 및 프로젝트 수준 구성 파일을 설명합니다.
기본 구성
일반적인 pom.xml 파일 구성은 다음과 같습니다.
<project xmlns = "http://maven.apache.org/pom/4.0.0"xmlns : xsi = "http://www.w3.org/2001/xmlschema-instance" xsi : schemalocation = "http://maven.apache.org/pom/4.0.0http://maven.apache.org/xsd/maven-4.0.xsd"> <!-모델 버전. Maven2.0은 다음과 같이 작성해야합니다. 이제 Maven2의 유일한 지원 버전입니다-> <modeversion> 4.0.0 </modelversion> <!-회사 또는 조직의 고유 한 플래그이며 구성 중에 생성 된 경로도 생성됩니다. 예를 들어, com.winner.trade, Maven은 프로젝트의 JAR 패키지를 로컬 경로에 배치합니다 :/com/winner/trade-> <groupid> com.winner.trade.trade.Trade.Trade.Trade.Trade.Trade.Trade.Trade.Trade.Trade.Trade.Trade.Trade.Trade.Trade.Trade.Trade.Trade.Trade.Trade. <버전> 1.0.0-snapshot </version> <!-이 프로젝트의 버전 번호는 현재-> <버전> 1.0.0-snapshot </version> <!-포장 메커니즘, pom, jar, maven-plugin, ejb, war, ear, rar, par, default> </packing in souxilecy compons in souxilecy </pacponing </packing </packing </packing </packing </packaging 요소. 보조 구성 요소는 기본 구성 요소에 해당합니다. 때로는 보조 구성 요소가 프로젝트에 의해 직접 생성되지 않지만 추가 플러그인의 도움으로 생성되기 때문에 구성 요소가 프로젝트의 분류자를 직접 정의 할 수 없다는 것을 고유하게 결정하기 위해 분류기를 추가해야합니다. </classifier> <!-이 프로젝트의 종속성을 정의합니다. Maven은 GroupID, ArtifactID 및 버전의 세 가지 요소 값 (일반적으로 좌표로 알려진)을 통해 구성 요소를 검색 한 다음 프로젝트를 소개합니다. 누군가가 현재 개발중인 프로젝트를 참조하려면 (원격 저장소에 개발 및 게시 된 경우)-> <!-POM 파일에 종속성 노드를 작성 하고이 프로젝트의 GroupID, ArtifactID 및 버전을 작성해야합니다. Maven은 현지-> <groupid> com.winner.trade </groupid> <artifactid> Trade-Test </artifactid> <version> 1.0.0-snapshot> <!-Maven이 프로그램의 단계와 응용 시나리오에 의존적으로 변경 될 것이라고 믿습니다. -> <!-스코프는 다음과 같은 값을 포함합니다. 컴파일 (compile scope), 제공 (제공 스코프), 런타임 (런타임 스코프), 테스트 스코프 (테스트 스코프)-> <Scope> 테스트 </스코프> <!-의존성이 선택 사항인지 거짓인지, 하위 상대가 유사 해야하는지, 즉, 하위 프로젝트가 유사해야합니다. 종속성 관리-> <선택 사항> false </옵션> <!-마스크 종속성. 예를 들어, 프로젝트에 사용 된 LIBA는 1.0 버전의 라이브러리에 따라 다르며 LIBB는 라이브러리의 2.0 버전에 따라 다릅니다. 이제 통합 방식으로 2.0 버전을 사용하려면 1.0 버전의 종속성을 차단해야합니다 .-> <제외> <pextrusion> <groupId> org.slf4j </groupId> <artifactId> </arepactid> </exclusion> </fexceents> </fexendencies> <!-일부 Constants for Pome. $ {file.encoding}-> <properties> <properties> <file.encoding> utf-8 </file.encoding> <java.source.version> 1.5 </java.source.version> <java.target.version> 1.5 </java.target.version> </project>일반적으로 위의 구성 항목은 모든 프로젝트에 필수적이며 프로젝트의 기본 속성을 정의합니다.
여기에서 덜 일반적으로 사용되는 속성 분류기를 설명해야합니다. 때로는 특정 JAR 패키지가 인용되고 분류기가 쓰여지지 않으면 오류 가보고됩니다.
분류기 요소는 구성 요소에 의해 출력되는 일부 보조 구성 요소를 정의하는 데 사용됩니다. 보조 구성 요소는 기본 구성 요소에 해당합니다. 예를 들어, 주요 구성 요소는 Kimi-App-2.0.0.jar입니다. 이 프로젝트는 일부 플러그인을 사용하여 Kimi-App-2.0.0-Javadoc.jar (Java Documentation) 및 Kimi-App-2.0.0-Sources.jar (Java 소스 코드)와 같은 두 가지 보조 구성 요소를 생성 할 수도 있습니다. 현재 Javadoc과 소스는이 두 보조 구성 요소의 분류기이므로 보조 구성 요소에 고유 한 좌표가 있습니다.
분류기의 목적은 다음과 같습니다.
1. Mavendownloadjavadoc/sourcesjar 패키지 일 때 분류기를 사용하여 다운로드 할 보조 구성 요소를 지정해야합니다.
2. 종속성을 도입 할 때, 때로는 특정 구성 요소를 GroupID, artifactid 및 버전에 따라 고유하게 결정할 수 없습니다. 목표를 더 명확히하기 위해서는 분류기가 필요합니다. 예를 들어, JSON-LIB는 때때로 동일한 버전으로 여러 개의 JAR 패키지를 제공하는데,이 버전은 JDK1.5 환경에서 세트하고 JDK1.3 환경에서 세트를 설정합니다.
인용 할 때 JDK 버전을 표시해야합니다. 그렇지 않으면 Maven이 필요한 JAR 패키지를 알지 못합니다.
<pectionency> <groupId> net.sf.json-lib </groupid> <artifactid> json-lib </artifactid> <버전> 2.4 </version> <classifier> jdk15 </classifier> </dependency>
구성을 빌드하십시오
<build> <!-생성 된 구성 요소의 파일 이름, 기본값은 $ {artifactid}-$ {version}입니다. -> <FinalName> myPorjectName </finalName> <!-빌드에 생성 된 모든 파일이 빌드에 저장된 디렉토리는 $ {basedir}/target, 즉 프로젝트의 루트 디렉토리의 대상입니다-> <directory> $ {basive}/target </directory> <! jar : jar 또는 설치, 컴파일 등과 같은 위상과 같은 명령 줄-> <fefaultgoal> install </defaultgoal> <!-필터링 스위치가 켜질 때 사용 된 필터 속성 파일 목록. -> <!-프로젝트 구성 정보에서 $ {spring.version}과 같은 자리 표시자는 속성 파일의 실제 값으로 대체됩니다 .-> <filters> <filter> ../ filter.properties </filter> </filters> <!-프로젝트와 관련된 모든 리소스 경로 및 프로젝트와 관련된 모든 리소스 파일 목록에 포함되어 있습니다. -> <자원> <자원> <!-자원의 대상 경로를 설명합니다. 경로는 대상/클래스 디렉토리와 관련이 있습니다 (예 : $ {project.build.outputDirectory}). -> <!-예를 들어, 리소스가 특정 패키지 (org.apache.maven.messages)에 있으려면 요소를 org/apache/maven/message로 설정해야합니다. -> <!-그러나 소스 디렉토리 구조에 리소스를 넣으려면이 구성이 필요하지 않습니다. -> <gargetPath> 리소스 </targetpath> <!-매개 변수 이름 대신 매개 변수 값을 사용할지 여부. 매개 변수 값은 속성 요소 또는 파일에 구성된 속성에서 가져오고 파일은 필터 요소에 나열되어 있습니다. -> </필터링> <!-자원이 저장되는 디렉토리를 설명합니다. POM 경로와 관련이있는 자원을 설명합니다 .-> <cleration> </directory> </directory> </director> <!-포함 패턴 목록-> <clenter> ***. <pextube>에 의해 정의 된 스코프는 <pexture>가 우선합니다-> <제외> <dbc.properties < /exclude> < /resource> < /resource> <!-단위 테스트와 관련된 모든 리소스 경로, 구성 메소드는 리소스와 유사합니다-> <testresources> <trestresources> <filter /> <concertor /> <concertory /> </testResource> </testResources> <!-프로젝트 소스 코드 디렉토리. 프로젝트를 구축 할 때 빌드 시스템은 디렉토리에서 소스 코드를 컴파일합니다. 이 경로는 pom.xml에 대한 상대 경로입니다. -> <courcedirectory> $ {basedir}/src/main/java </sourcedirectory> <!-프로젝트 스크립트의 소스 코드 디렉토리는 소스 코드 디렉토리와 다릅니다. <!- 대부분의 경우이 디렉토리의 내용은 출력 디렉토리에 복사됩니다 (스크립트가 컴파일되지 않은 스크립트가 해석되기 때문에). -> <criptsourcedirectory> $ {basedir}/src/main/scripts </scriptsourcedirectory> <!-프로젝트 단위 테스트에 사용되는 소스 코드 디렉토리. 프로젝트를 테스트 할 때 빌드 시스템은 디렉토리에서 소스 코드를 컴파일합니다. 이 경로는 pom.xml에 대한 상대 경로입니다. -> <testsourcedirectory> $ {basedir}/src/test/java </testsourcedirectory> <!-컴파일 된 응용 프로그램 클래스 파일이 저장되는 디렉토리. -> <outputDirectory> $ {basedir}/target/class </outputDirectory> <!-컴파일 된 테스트 클래스 파일이 저장되는 디렉토리. -> <TestOutputDirectory> $ {basedir}/target/test-classes </testOutputDirectory> <!-일련의 빌드 프로세스에 사용될 제품인 프로젝트의 일련의 건축 확장은 실행 중이며 Bulid의 클래스 경로에 포함될 것입니다. -> <!-확장을 켜거나 조건을 제공하여 플러그인을 활성화 할 수 있습니다. -> <!-간단히 말해서, 확장자는 빌드 프로세스 중에 활성화되는 제품입니다-> <Extensions> <!-예를 들어, 일반적으로 프로그램 개발이 완료된 후 포장과 같은 일련의 지루한 단계가 필요할 수 있습니다.-> <!-패키지 파일을 서버에 전달하고 SSH를 서버에 연결하고 프로그램을 시작합니다. -> <!-실제로 이러한 단계는 Maven, Wagon-Maven-Plugin의 플러그인을 통해 자동으로 완료 될 수 있습니다 .-> <!-다음 확장자 플러그인 Wagon-Ssh는 SSH를 통해 원격 서버에 연결하는 데 사용됩니다. -> <!-FTP를 지원하는 유사한 마차 -FTP 플러그인 ---> <prectension> <groupid> org.apache.maven.wagon </groupid> <artifactid> Wagon-ssh </artifactid> <버전> 2.8 </version> </extensions> <!-사용 된 플러그인 목록. -> <Plugins> <Plugin> <groupId> </groupId> <artifactID> Maven-Assembly-Plugin </artifactid> <버전> 2.5.5 </version> <!-빌드 수명주기 동안 대상 구성 세트를 실행합니다. 각 대상은 다른 구성을 가질 수 있습니다. -> <executions> <execution> <!-실행 대상의 식별자, 시공 프로세스 중 대상을 식별하는 데 사용되거나 상속 프로세스 중에 병합되어야하는 실행 대상과 일치하는 데 사용됩니다-> <id> 어셈블리 </id> <!-대상의 빌드 라이프 사이클 단계를 바인딩합니다. 생략하면 대상이 소스 데이터에서 구성된 기본 위상으로 바인딩됩니다 .-> <case> 패키지 </phase> <!-실행 대상의 구성-> <Goal Goal> Single> Single> Single> </Goals> <!-구성을 하위 폼으로 전파해야합니다-> <inherited> false </inherited> </execution> </execution> <! 플러그인에 따라-> <finalname> $ {finalName} </finalName> <PinalName> <PinalSemblyId> false </accendAsemblyID> </backendAsemblyID> </backendAsemblyID> </descriptor.xml </desciguration> <! <! <! <! <! <! <! 정말로 필요합니다. -> <pextions> false </extensions> <!-프로젝트 소개 플러그인에 필요한 추가 종속성-> <pectionies> <pectionals> ... </fectence> </fectence> <!-구성이 하위 프로젝트로 전파되는지-> </inherited> </plugin> <!-공식적인 표현의 공식적인 정의 및 공식적인 정의와 유사한 표현과 유사합니다. 종속성 관리,-> <!-이 프로젝트에서 상속 된 모든 하위 프로젝트를 사용할 수 있습니다. 이 플러그인 구성 항목은 참조 될 때까지 수명주기에 구문 분석되거나 바인딩되지 않습니다. -> <!-주어진 플러그인의 로컬 구성이 여기에서 구성을 무시합니다-> <PluginManagement> <Plugins> ... </pluginmanagement> </build>POM의 저장소는 setting.xml의 저장소와 동일한 기능을 갖습니다. 주요 차이점은 POM의 창고가 개인화된다는 것입니다. 예를 들어, 대기업의 설정 파일은 공개적이며 모든 프로젝트는 설정 파일을 사용하지만 각 하위 프로젝트는 다른 타사 라이브러리를 참조하므로 POM에 필요한 저장소 주소를 설정해야합니다.
분포 구성
<!-프로젝트 배포 정보는 MVN 배포를 실행 한 후 게시 할 위치를 나타냅니다. -> <!-이 정보를 사용하면 웹 사이트를 원격 서버에 배포하거나 구성 요소를 원격 저장소에 배포 할 수 있습니다. -> <eptributionManagement> <!-프로젝트에서 생성 된 위젯을 원격 저장소에 배치하는 데 필요한 정보-> <repository> <!-스냅 샷에 고유 한 버전 번호 (타임 스탬프 및 빌드 흐름 번호)가 할당되어 있습니까? </id> <name> repo-name </name> <url> 파일 : // $ {basedir}/target/deploy </url> <layout/> </repository> <!-위젯의 스냅 샷을 어디에 배치할까요? 요소가 구성되지 않은 경우 기본적으로 리포지토리 요소에 의해 구성된 저장소에 배포됩니다 .-> <snapshotrepository> <eliqueversion /> <id /> <name /<name /<name /<name /<name /<url /> <layout /> < /snapshotrepository> <!-프로젝트를 배치하기 위해 웹 사이트에서 요구하는 정보-<! 사이트 및 settings.xml 파일의 구성-> <id> site-id </id> <!-배포 위치의 이름-> <name> site-name </name> <!-프로토콜에 따라 배포 위치의 URL-> <url> scp : //svn.baidu.com/banseb :/var/www/www/www/www/www/www/www/www/www/www/www/www/www/www/www/www. </url> </site> <!-프로젝트 다운로드 페이지의 URL. 이 요소를 사용할 수없는 경우 사용자는 홈페이지를 참조해야합니다. -> <!-이 요소를 사용하는 이유는 창고에없는 구성 요소 (라이센스 제한으로 인해)를 찾는 데 도움이됩니다. -> <downloadUrl /<!-구성 요소에 새로운 GroupId 및 Artifact ID가있는 경우 (구성 요소가 새 위치로 이동) 구성 요소의 재배치 정보가 여기에 나열되어 있습니다. -> <repocation> <!-기사의 새로운 그룹 ID-> <GroupId /> <!-기사의 새로운 아티팩트 ID-> <artifactid /> <!-기사의 새 버전 번호-> <버전 /> <!-이유와 같은 운동에 대한 기사의 새로운 정보. -> <message /> < /릴리스> <!-원격 저장소에서 구성 요소의 상태를 제공합니다. 이 요소는 도구에 의해 자동으로 업데이트되므로 로컬 프로젝트에서 설정해서는 안됩니다. -> <!-유효한 값은 다음과 같습니다. 없음 (기본값), 변환 (창고 관리자가 Maven 1 Pom에서 변환),-> <!-파트너 (파트너 Maven 2 리포지토리에서 직접 동기화 됨), 배포 된 (Maven 2 인스턴스에서 배포 됨), 확인 (확인 및 최종). -> <상태 /> < /배포 관리>창고 구성
<!-종속성과 확장에 대한 원격 저장소 목록을 발견하십시오. -> <repositories> <!-원격 저장소에 연결되어야하는 정보가 포함되어 있습니다-> <repository> <!-원격 저장소에서 게시 된 버전의 다운로드를 처리하는 방법-> <릴리스> <!-True 또는 False는 특정 유형의 구성 요소를 다운로드하기 위해 리포지토리가 열려 있는지 여부를 나타냅니다 (릴리스 버전, 스냅 샷 버전). -> <enabled /> <!-이 요소는 업데이트가 발생하는 주파수를 지정합니다. Maven은 로컬 POM과 원격 POM의 타임 스탬프를 비교합니다. -> <!-여기의 옵션은 항상, 매일 (기본값, 매일),-> <!-간격 : x (여기 x는 시간 간격이 몇 분)이거나 결코 (절대)입니다. -> <UpdatePolicy /> <!-Maven 확인 구성 요소 확인 파일이 실패 할 때해야 할 일 :-> <!-무시, 실패 또는 경고. -> <checksumpolicy /> < /릴리스> <!-원격 저장소에서 스냅 샷 버전 다운로드를 처리하는 방법. 두 세트의 구성, 릴리스 및 스냅 샷을 사용하여-> <!-POM은 각 별도의 저장소에서 각 유형의 구성 요소에 대해 다른 전략을 채택 할 수 있습니다. -> <!-예를 들어, 누군가가 개발 목적으로만 스냅 샷 버전 다운로드를 지원하기로 결정할 수 있습니다 .-> <snapshots> <enabled /<updatepolicy /> <checksumpolicy /> < /snapshots> <!-원격 리포지토리 고유 식별자. settings.xml 파일에서 구성된 원격 저장소와 일치하는 데 사용될 수 있습니다-> <id> repoid </id> <!-원격 저장소 이름-> <name> repo-name </name> <!-원격 리포지토리 URL : // hostname/path-> <url> http:/192.168.1.169:99/168.169:999/168. </url> <!-구성 요소를 찾아서 정렬하는 데 사용되는 저장소 레이아웃 유형-기본값 (기본값) 또는 레거시 (레거시) 일 수 있습니다. -> <!-Maven 2는 저장소에 대한 기본 레이아웃을 제공합니다. -> <!-그러나 Maven1.x는 다른 레이아웃이 있습니다. -> <!-이 요소를 사용하여 레이아웃이 기본값인지 유산인지 지정할 수 있습니다. -> <layout> default </layout> </repository> </repository> </repository> <!-구축 및보고를위한 플러그인의 원격 저장소 목록을 발견-> <fluginRepositories> <!-원격 플러그인 리포지토리에 연결 해야하는 정보가 포함되어 있습니다. 저장소/저장소 요소 -> <플러그인 레피터/> </pluginRepositories>를 참조하십시오
프로필 구성
<!-열에 프로필을 작성하십시오. 활성화되면 빌드 프로세스가 수정됩니다-> <profiles> <!-환경 매개 변수 또는 명령 줄 매개 변수를 기반으로 빌드 프로세스를 활성화합니다.-> <profile> <!-프로파일을 자동으로 트리거하는 조건부 논리. 활성화는 프로파일의 오프닝 키입니다. -> <activation> <!-기본적으로 프로파일이 활성화되는지 여부의 ID-> <ctiveByDefault> false </activeByDefault> <!-Activation에는 Java 버전 감지가 내장되어 있습니다. JDK 버전이 예상대로 감지되면 프로파일이 활성화됩니다. -> <jdk> 1.7 </jdk> <!-일치하는 운영 체제 속성이 감지되면 프로파일이 활성화됩니다. OS 요소는 일부 운영 체제 관련 속성을 정의 할 수 있습니다. -> <os> <-프로파일을 활성화하는 운영 체제의 이름-> <name> Windows XP </name> <!-프로파일을 활성화하는 운영 체제의 제품군 ( 'Windows')-> <fomily> windows </family> <!-프로필의 운영 체제 아키텍처-> <아치> x86 <! <!-Maven이 특정 속성을 감지하면 (값이 POM에서 $ {name}에 의해 값을 참조 할 수 있음) 해당 이름과 값을 가지며 프로파일이 활성화됩니다. -> <!-값 필드가 비어 있으면 속성 이름 필드가 있으면 프로파일이 활성화됩니다. 그렇지 않으면, 속성 값 필드는 케이스에 민감한 방식으로 일치합니다-> <posperty> <!-프로파일을 활성화하는 속성의 이름-> <name> mavenversion </nameversion </nameversion </name> <!-프로파일을 활성화하는 속성의 값-> <alue> 2.0.3 </value> <!-존재 또는 비 출판물을 감지하여 프로파일을 활성화시키는 파일 이름을 제공합니다. 누락 된 파일이 존재하는지 확인하고 프로파일이 존재하지 않으면 프로파일을 활성화합니다. -> <!-반면에, 파일이 존재하는지 확인하고 프로파일이 존재하는 경우 프로파일을 활성화합니다. -> <file> <!-지정된 파일이 존재하면 프로필을 활성화하십시오. -> <Exists>/usr/local/hudson/hudson-home/jobs/maven-guide-zh-to-production/workpace/</exists> <!-지정된 파일이 존재하지 않으면 프로필을 활성화하십시오. -> <fiend>/usr/local/hudson/hudson/jobs/maven-guide-zh-to-froduction/workspace/</missing> </file> </activation> <id/> <modules/<modules/> <Repositories/> <pluginRepositories/> <Properting/> <otteliblicmanagemagemagement/>>>. </프로필> 프로파일 구성 항목은 ID, 활성화, 리포지토리, 플러그인 조정 및 속성 요소를 포함하여 POM.XML의 프로파일 요소의 자른 버전 인 Setting.xml에서도 사용할 수 있습니다. Setting.xml은 별도의 프로젝트 객체 모델 설정이 아닌 전체 건물 시스템에만 관심이 있기 때문에 여기에 프로파일 요소는이 5 가지 하위 요소 만 포함합니다. 설정의 프로파일이 활성화되면 값은 동일한 ID로 POM 또는 Profile.xml에 정의 된 다른 프로파일을 덮어 씁니다.
pom.xml의 프로파일은 pom.xml과 동일한 자식 요소 및 구성 메소드와 함께 Pom.xml의 사본으로 간주 될 수 있습니다. 옵션 활성화 (프로파일 트리거)와 일련의 변경 사항이 포함되어 있습니다. 예를 들어, 테스트 프로세스는 다른 데이터베이스 (최종 배포에 비해) 또는 다른 종속성 또는 다른 리포지토리를 가리킬 수 있으며 다른 JDK에 따라 변경됩니다. 프로파일을 활성화하기 위해 그중 하나만 설정됩니다. 첫 번째 조건이 충족되면 앞으로 일치하지 않을 것입니다.
보고서 구성
<!-보고서 플러그인을 사용하여 보고서를 생성하기위한 사양을 설명하십시오. 특정 Maven 플러그인은 해당 사용자 정의 및 구성 보고서를 출력 할 수 있습니다. -> <!-사용자가 "MVN 사이트"를 실행하면이 보고서가 실행되며 페이지 탐색 표시 줄에서 모든 보고서에 대한 링크를 볼 수 있습니다. -> <보고> <!-True, 웹 사이트에는 기본 보고서가 포함되어 있지 않습니다. 여기에는 프로젝트 정보 메뉴의 보고서가 포함됩니다. -> <fexcludedEfaults /> <!-모든 생성 된 보고서가 저장되는 곳은 어디에 있습니다. 기본값은 $ {project.build.directory}/site입니다. -> <outputDirectory /> <!-사용 된 보고서 플러그인 및 해당 구성. -> <Plugins> <Plugin> <GroupId/> <artifactID/> <버전/> <inherited/> <configuration> <links> <links> http://java.sun.com/j2se/1.5.0/docs/api/ </link> </links> <! -> <!-사양 (보고서 세트)은 실행 대상에 해당합니다. 예를 들어, 1, 2, 3, 4, 5, 6, 7, 8, 9 보고서가 있습니다. -> <!-1, 2, 5는 실행 대상에 해당하는 보고서 세트를 구성합니다. 2, 5, 8은 다른 실행 대상에 해당하는 B 보고서 세트를 구성합니다 .-> <보고서> <!--POM 상속 할 때 사용되는 보고서의 고유 식별자 인 SET의 고유 식별자-> <id> SUNLINK < /id> <!-보고서의 구성이 포함되어 있는지, <! 어린이 poms-> <상속/> <!-이 세트에 사용되는 보고서-> <보고서> <prespt> javadoc </report> </reports> </Reportset> </Reportset> </plugin> </plugins> </reporting>환경 구성
<!-프로젝트 문제 관리 시스템의 이름과 URL (Bugzilla, Jira, Scarab 또는 원하는 문제 관리 시스템). 이 예에서 jira-> <vissuemanagement> <!-문제 관리 시스템 (예 : Jira),-> <system> jira </system> <!-프로젝트에서 사용하는 문제 관리 시스템의 URL-> <Url> http://jira.clf.com/ </vissueManagement> <!-<CONTERUTION-SYTURATION-SYSTION의 이름. <!-프로젝트에서 사용하는 연속 통합 시스템의 URL (연속 통합 시스템에 웹 인터페이스가있는 경우). -> <url /> <!-빌드가 완료 될 때 알려야하는 개발자 /사용자의 구성 항목. 알림 정보 및 알림 조건 (오류, 실패, 성공, 경고)-> <notifiers> <!-빌드가 중단 될 때 사용자 /개발자에게 알리는 방법을 구성합니다-> <notifier> <!-알림을 보내는 방법-> <type /> <!-오류가 발생했을 때 알림-> <sendonerRor />--빌드가 실패 할 때 알림을받을 때 알 수 있습니다. <!-빌드가 성공했을 때 알림-> <sendonsuccess /> <!-경고가 발생할 때 알림을 받습니까?> <sendonWarning /> <!-경고가 발생할 때 알림이 표시됩니까?> <sendOnwarning /> <!-경고가 발생할 때 알림-> <SendOnwarning />-사용되지 않은 경우 알 수 있습니다. 알림을 보내는 곳-> <address/> <!-확장 구성 항목-> <configuration/> </notifier> </notifiers> </cimanagement>
프로젝트 정보 구성
<!-Maven이 생성 한 문서의 이름-> <name> banseon-maven </name> <!-프로젝트 홈페이지의 URL, Maven에서 생성 한 문서의 URL-> <url> http://www.clf.com/ </url> <!-Maven이 생성 한 문서에 대한 자세한 설명. 이 요소가 HTML 형식-> <!-(예 : CDATA의 텍스트는 파서에 의해 무시되고 HTML 태그를 포함 할 수 있음)로 설명 할 수있는 경우 일반 텍스트 설명이 권장되지 않습니다. -> <!-생성 된 웹 사이트의 인덱스 페이지를 수정 해야하는 경우 여기에서 문서를 조정하는 대신 고유 한 색인 페이지 파일을 수정해야합니다. -> <description> Maven을 연구하는 Maven 프로젝트. </description> <!-이 프로젝트의 건축 환경에서 전제 조건을 설명합니다. -> <perrequisites> <!-프로젝트를 구축하거나 플러그인을 사용하는 데 필요한 Maven의 최소 버전-> <maven /> < /perrequisites> <!-프로젝트 생성 연도, 4 자리. 이 값은 저작권 정보를 생성 할 때 필요합니다. -> <inceptionyear /> <!-프로젝트 관련 메일 링리스트 정보-> <mailinglists> <!-이 요소는 프로젝트와 관련된 모든 메일 링리스트를 설명합니다. 자동으로 생성 된 웹 사이트는이 정보를 참조합니다. -> <mailinglist> <!-이메일 이름-> <name> demo </name> <!-이메일 보내기위한 주소 또는 링크. 이메일 주소 인 경우 Mailto : 링크는 문서를 작성할 때 자동으로 작성됩니다.> <ost> [email protected] </post> <!-이메일 구독을위한 주소 또는 링크. 이메일 주소 인 경우 Mailto : 링크는 문서를 작성할 때 자동으로 생성됩니다.> <subscribe> [email protected] </subscribe> <!-이메일을 수신하지 않은 주소 또는 링크. 이메일 주소 인 경우 Mailto : 링크가 문서를 작성할 때 자동으로 작성됩니다.> <Unsubscribe> [email protected] </uncubscribe> <!-이메일 정보의 URL을 탐색 할 수 있습니다-> <Archive> http : /hi.clf.com/</archive> </mailinglist> </mailinglists>-Projector List- <!-<!-<! 개발자-> <개발자> <!-SCM의 프로젝트 개발자의 고유 식별자-> <id> Hello World </id> <!-프로젝트 개발자의 전체 이름-> <name> banseon </name> <!-프로젝트 개발자의 이메일-> <email> [email protected] </email> <!-프로젝트 개발자의 url/> <! 역할 요소는 다양한 역할을 설명합니다-> <역할> <역할> 프로젝트 관리자 </robol> <brole> Architect </roble> </roboles> <!-프로젝트 개발자가 속한 조직-> <grunization> demo </organization> <!-프로젝트 개발자가 속한 조직의 URL-> <grounderUl> http://hi.cr.com/ <! 인스턴트 메시지 등을 처리하려면-> <properties> <dpt> no </dept> </properties> <!-프로젝트 개발자가 위치한 시간대, -11 ~ 12 ~ 12의 정수.-> <timezone> -5 </developer> </developers> <!-프로젝트의 다른 기여자-> contributs>의 다른 기여자. 개발자 /개발자 요소-> <contributor> <name /> <email /> <url /> <organization /<organization /<organization /> <holes /> <timezone /<properties /> < /contributor> < /contributors> <!-이 요소는 프로젝트의 모든 라이센스 목록을 설명합니다. 프로젝트의 라이센스 목록 만 나열하고 종속성 프로젝트의 라이센스 목록을 나열하지 마십시오. -> <!-여러 라이센스가 나열되면 사용자는 모든 라이센스를 수락하는 대신 그 중 하나를 선택할 수 있습니다. -> <라이센스> <!-프로젝트의 라이센스를 설명하며 프로젝트 웹 사이트의 라이센스 페이지를 생성하는 데 사용됩니다. 다른 보고서 및 검증 도이 요소를 사용합니다. -> <clice> <-라이센스는 법적 이름에 사용됩니다-> <name> apache 2 </name> <!-공식 라이센스 본문 페이지의 URL-> <url> http://www.clf.com/license-2.0.txt </url> <! Repo </distribution> <!-라이센스에 대한 보충 정보-> <의견> Abusiness 친화적 인 OSS 라이센스 </댓글> </라이센스> </라이센스> <!-SCM (Source Control Management) 태그를 사용하면 Maven 웹 사이트 및 기타 플러그인에서 사용할 코드 기반을 구성 할 수 있습니다. -> <cm> <!-저장소와 리포지토리에 연결하는 방법을 설명하는 SCM URL. 자세한 내용은 SCMS에서 제공 한 URL 형식 및 목록을 참조하십시오. 이 연결은 읽기 전용입니다. -> <connection> svn : http : //svn.baidu.com/banseon/maven/ </connection> <!-- 연결 요소와 유사하게 개발자의 경우. 즉, 연결은 단순히 읽는 것이 아닙니다-> <개발자 연결> scm : svn : http : //svn.baidu.com/banseon/maven/ </developerConnection> <!-현재 코드의 태그는 개발 단계에서 기본적으로 기본적으로 기본적으로 표시됩니다. -> <url> http://svn.baidu.com/banseon </url> </scm> <!-프로젝트가 속한 조직의 다양한 속성을 설명하십시오. Maven-> <조직> <!-조직의 전체 이름-> <name> demo </name> <!-조직의 URL-> <url> http://www.clf.com/ </unritiation>
요약
위는 Maven의 pom.xml 구성 파일에 대한이 기사의 모든 내용입니다. 모든 사람에게 도움이되기를 바랍니다. 관심있는 친구는이 사이트의 다른 관련 주제를 계속 참조 할 수 있습니다. 단점이 있으면 메시지를 남겨 두십시오.