English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
spring-boot-starter-parent هو بدء المشروع. يوفر إعدادات افتراضية لمنظمنا. جميع الاعتمادات تستخدم داخله. كل مشاريع Spring Boot تستخدم spring-boot-starter-parent كـ pom الأم في ملف pom.xml.
<parent> <مجموعة_المكون>org.springframework.boot</مجموعة_المكون> <artifactId>spring-boot-starter-parent</artifactId> <version>1.4.0.RELEASE</version> </parent>
يُمكن للـ Parent Poms أن ندير الآتي في مشاريع وأجزاء متعددة:
الإعداد: إنه يتيح لنا الحفاظ على توافق إصدار Java وأي خصائص مرتبطة أخرى. إدارة الاعتمادات: إنه يتحكم في إصدارات الاعتمادات لتجنب التوترات. كود المصدر الإصدار الافتراضي لـ Java تصفية الموارد إنه أيضًا يتحكم في إعدادات الأدوات الافتراضية.
يرث spring-boot-starter-parent إدارة علاقات الاعتماد من spring-boot-dependencies. يكفي أن نحدد إصدار Spring Boot. إذا كنت بحاجة إلى بدائل إضافية، يمكننا تجاهل إصدار الاعتماد.
يحدد Spring Boot Starter Parent علاقات الاعتماد كـ pom الأم. إنه يرث إدارة الاعتمادات من spring-boot-dependencies.
<parent> <مجموعة_المكون>org.springframework.boot</مجموعة_المكون> <اسم_المكون>spring-boot-dependencies</اسم_المكون> <version>1.6.0.RELEASE</version> <relativePath>../../spring-boot-dependencies</relativePath> </parent>
الإعداد الافتراضي للبقية
<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. يمكننا أيضًا تحديد إصدار Java من خلال تحديد الخاصية في pom المشروع
إدارة الأدوات
spring -boot-starter-parent حددت العديد من إعدادات الأدوات المدمجة، بما في ذلك maven-failsafe-plugin، maven-jar-plugin و maven-surefire-plugin.
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-failsafe-plugin</artifactId> <executions> <execution> <goals> <goal>integration-test</goal> <goal>verify</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <configuration> <archive> <manifest> <mainClass>${start-class}</mainClass> <addDefaultImplementationEntries>true</addDefaultImplementationEntries> </manifest> </archive> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <configuration> <includes> <include>**/*Tests.java</include> <include>**/*Test.java</include> </includes> <excludes> <exclude>**/Abstract*.java</exclude> </excludes> </configuration> </plugin>
اعتمادات Spring Boot
الإعداد الاعتماد على spring-boot-starter-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.RELEASE</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> <prerequisites> <maven>3.2.1</maven> </prerequisites>
في بعض الحالات، لا نحتاج إلى توريث ملف pom.xml الخاص بـ spring-boot-starter-parent. من أجل التعامل مع هذه الحالات، يقدم Spring Boot مرونة، حيث يمكن استخدام إدارة الاعتماديات حتى بدون توريث spring-boot-starter-parent.
<إدارة_الاعتماديات> <اعتماديات> <اعتماد> <!-- استيراد إدارة الاعتماديات من Spring Boot --> <مجموعة_المكون>org.springframework.boot</مجموعة_المكون> <اسم_المكون>spring-boot-dependencies</اسم_المكون> <إصدار>2.1.1.RELEASE</إصدار> <نوع>pom</نوع> <مجال>استيراد</مجال> </اعتماد> </اعتماديات> </إدارة_الاعتماديات>
في الكود أعلاه، يمكننا رؤية أننا استخدمنا <مجال>العلامات. عندما نريد استخدام إصدار مختلف من الاعتماديات المحددة، هذا مفيد جدًا.