English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
spring-<artifactId>spring--parent는 프로젝트 스타터입니다. 우리의 애플리케이션에 기본 설정을 제공하며 모든 의존성이 내부에서 사용됩니다. 모든 Spring Boot 프로젝트는 pom.xml 파일에서 spring-<artifactId>spring--parent는 부모로 사용됩니다.
<parent> <!/> <groupId>-<artifactId>spring--parent</dependencies< artifactId>1<4.0.RELEASE</버전> </parent>
부모 Pom은 여러个子 프로젝트와 모듈의 다음 내용을 관리할 수 있게 합니다:
Configuration: 그것은 우리가 Java 버전과 다른 관련 속성의 일관성을 유지할 수 있게 합니다. Dependency Management: 그것은 충돌을 피하기 위해 의존 관리의 버전을 제어합니다. 소스编码 기본 Java 버전 자원 필터링 그것은 기본 플러그인 설정도 제어합니다.
spring-<artifactId>spring--parent는 spring에서-<artifactId>spring-dependencies는 의존 관리를 继承합니다. 우리는 단지 Spring Boot 버전 번호를 지정하면 됩니다. 추가적인 스타터가 필요하다면, 버전 번호를 안전하게 제외할 수 있습니다.
Spring Boot Starter Parent는 spring-boot에서 -의존 관계는 부모 pom으로. 그것은 spring-<artifactId>spring-dependencies는 의존 관리를 继承합니다.
<parent> <!/> <groupId>-<artifactId>spring-boot/dependencies< artifactId>1<6.0.RELEASE</버전> <relativePath>../../spring-<artifactId>spring-boot/relativePath> </parent>
기본 부모 Pom
<properties> <java.version>1<8</java.version> <resource.delimiter>@</resource.delimiter> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <maven.compiler.source>${java.version}<//maven.compiler.source> <maven.compiler.target>${java.version}<//maven.compiler.target> </properties>
속성 부분은 응용 프로그램 기본 값을 정의합니다. Java의 기본 버전은1<8프로젝트 pom에서 속성을 지정하여
플러그인 관리
spring -<artifactId>spring--parent 많은 플러그인의 기본 설정을 지정했습니다. 이 중 maven-failsafe-plugin, maven-jar-plugin과 maven-surefire-plugin.
<plugin> <groupId>org.apache.maven.plugins</> <artifactId>maven-failsafe-plugin</dependencies< <executions> <execution> <goals> <goal>integration-test</goal> <goal>verify</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</> <artifactId>maven-jar-plugin</dependencies< <configuration> <archive> <manifest> <mainClass>${start-class}</mainClass> <addDefaultImplementationEntries>true</addDefaultImplementationEntries> </manifest> </archive> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</> <artifactId>maven-surefire-plugin</dependencies< <configuration> <includes> <include>**/*Tests.java</include> <include>**/*Test.java</include> </includes> <excludes> <exclude>**/Abstract*.java</exclude> </excludes> </configuration> </plugin>
Spring Boot 의존성
spring-<artifactId>spring--parent 의존성에서 spring-boot 의 의존성을 继承하여, 이러한 모든 특징을 가지고 있습니다. 따라서, Spring Boot는 의존성 목록을 의존성 관리의 일부로 관리합니다.
<properties> <activemq.version>5<13<4</activemq.version> ... <ehcache.version>2<10<2<2<21</ehcache.version> <ehcache3.version>3<1<1</ehcache3.version> ... <h2.version>1<4<192</h2.version> <hamcrest.version>1<3</hamcrest.version> <hazelcast.version>3<6<4</hazelcast.version> <hibernate.version>5.0.9.Final</hibernate.version> <hibernate-validator.version>5<2<4.Final</hibernate-validator.version> <hikaricp.version>2<4<7</hikaricp.version> <hikaricp-java6.version>2<3<13</hikaricp-java6.version> <hornetq.version>2<4<7.Final</hornetq.version> <hsqldb.version>2<3<3</hsqldb.version> <htmlunit.version>2<21</htmlunit.version> <httpasyncclient.version>4<1<2</httpasyncclient.version> <httpclient.version>4<5<2</httpclient.version> <httpcore.version>4<4<5</httpcore.version> <infinispan.version>8<2<2.Final</infinispan.version> <jackson.version>2<8<1</jackson.version> .... <jersey.version>2<23<1</jersey.version> <jest.version>2.0.3</jest.version> <jetty.version>9<3<11.v20160721</jetty.version> <jetty-jsp.version>2<2.0.v201112011158</jetty-jsp.version> <spring-security.version>4<1<1<버전>/spring-security.version> <tomcat.version>8<5<4</tomcat.version> <undertow.version>1<3<23.Final</undertow.version> <velocity.version>1<7</velocity.version> <velocity-tools.version>2.0</velocity-tools.version> <webjars-hal-browser.version>9f96c74</webjars-hal-browser.version> <webjars-locator.version>0.32</webjars-locator.version> <wsdl4j.version>1<6<3</wsdl4j.version> <xml-apis.version>1<4.01</xml-apis.version> </properties> <필수 사항> <maven>3<2<1</maven> </필수 사항>
-<artifactId>spring---<artifactId>spring--certain cases, we do not need to inherit the spring in the pom.xml file
starter parent의 경우에도 의존 관리를 계속 사용합니다. 예제 <dependencyManagement>-- <dependencies> --<dependency> <!/> <groupId>-<artifactId>spring-boot/dependencies< artifactId>2<1<1<버전>/버전> <타입>pom</타입> <스코프>import</스코프> </dependency> </dependencies> </dependencyManagement>
위의 코드에서는 이를 위해 사용했음을 볼 수 있습니다. <스코프>태그. 특정 의존성에 대해 다른 버전을 사용하려 할 때 매우 유용합니다.