Blog KaryaVirtual

Gudang Pengetahuan Digital

Contoh Spring-boot-starter-parent

January 23, 2020 Learn Springboot 0

Dalam tutorial Springboot ini, kita akan belajar tentang dependency spring-boot-starter-parent yang digunakan secara internal oleh semua dependency Spring boot. Kami juga akan mempelajari apa semua konfigurasi dependency ini menyediakan, dan bagaimana untuk menimpa mereka.

Apakah dependency Spring-boot-starter-Parent?

spring-boot-starter-parent dependency adalah induk POM menyediakan dependency dan manajemen plugin untuk aplikasi berbasis Spring boot. Ini berisi versi default Java untuk digunakan, versi default dari dependensi yang digunakan Spring boot, dan konfigurasi default dari plugin Maven.

Beberapa konfigurasi penting yang disediakan oleh file ini adalah sebagai berikut. Silakan lihat link  ini untuk membaca konfigurasi lengkap.

pom.xml

<?xml version="1.0" encoding="UTF-8"?>
<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.0 http://maven.apache.org/xsd/maven-4.0.0.xsd;
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-dependencies</artifactId>
        <version>${revision}</version>
        <relativePath>../../spring-boot-dependencies</relativePath>
    </parent>
    <artifactId>spring-boot-starter-parent</artifactId>
    <packaging>pom</packaging>
    <name>Spring Boot Starter Parent</name>
    <description>Parent pom providing dependency and plugin management for applications
        built with Maven</description>
    <properties>
        <java.version>1.8</java.version>
        <resource.delimiter>@</resource.delimiter> <!-- delimiter that doesn't clash with Spring ${} placeholders -->
        <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>
     
    ...
 
    <resource>
        <directory>${basedir}/src/main/resources</directory>
        <filtering>true</filtering>
        <includes>
            <include>**/application*.yml</include>
            <include>**/application*.yaml</include>
            <include>**/application*.properties</include>
        </includes>
    </resource>
 
</project>

spring-boot-starter-parent dependensi lebih lanjut mewarisi dari spring-boot-dependencies, yang didefinisikan di atas file di atas POM pada nomor baris: 9.

File ini adalah file aktual yang berisi informasi versi default untuk digunakan untuk semua perpustakaan. Kode berikut menunjukkan versi yang berbeda dari berbagai dependensi yang dikonfigurasi di spring-boot-dependencies:

pom.xml
<properties>
    <!-- Dependency versions -->
    <activemq.version>5.15.3</activemq.version>
    <antlr2.version>2.7.7</antlr2.version>
    <appengine-sdk.version>1.9.63</appengine-sdk.version>
    <artemis.version>2.4.0</artemis.version>
    <aspectj.version>1.8.13</aspectj.version>
    <assertj.version>3.9.1</assertj.version>
    <atomikos.version>4.0.6</atomikos.version>
    <bitronix.version>2.1.4</bitronix.version>
    <byte-buddy.version>1.7.11</byte-buddy.version>
    <caffeine.version>2.6.2</caffeine.version>
    <cassandra-driver.version>3.4.0</cassandra-driver.version>
    <classmate.version>1.3.4</classmate.version>
 
    ...
    ...
</properties>

Daftar di atas sangat panjang dan Anda dapat membaca daftar lengkap di link ini.

Bagaimana menimpa versi dependensi default?

Seperti yang Anda lihat, Spring boot memiliki versi default yang akan digunakan untuk sebagian besar dependensi. Anda dapat menimpa versi pilihan Anda atau kebutuhan proyek, dalam tag properties dalam file pom.xml proyek Anda.

misalnya Spring boot digunakan versi default Google GSON perpustakaan sebagai 2.8.2.

<groovy.version>2.4.14</groovy.version>
<gson.version>2.8.2</gson.version>
<h2.version>1.4.197</h2.version>

Saya ingin menggunakan 2.7 dari gson dependency. Jadi saya akan memberikan informasi ini dalam tag Properties seperti ini.

<properties>
    <java.version>1.8</java.version>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <gson.version>2.7</gson.version>
</properties>

Sekarang di editor Eclipse Anda, Anda dapat melihat pesan sebagai: versi yang dikelola adalah 2,7 artefak dikelola di org. springframework. boot: Spring-boot-dependencies: 2.0.0. RELEASE.

GSON resolved dependency

GSON menyelesaikan dependency

Drop me pertanyaan Anda di bagian komentar.

Selamat belajar!!

Leave a Reply

Your email address will not be published. Required fields are marked *