Menggunakan Dependencies Dari Maven Repository

Untuk automation menggunakan Java, kita dapat menggunakan library dari Maven repository. Di artikel ini, akan dibahas bagaimana cara melakukan import dependencies dari Maven repository.

Apa itu Maven Repository

Maven repository adalah direktori di mana tempat semua file .jar atau library jar atau plugin disimpan dan yang dapat digunakan oleh Maven.

Maven repository memiliki 3 jenis:

  • Local repo
  • Central repo
  • Remote repo

Maven akan mencari dependensi dengan urutan Local repo ==> Central repo ==> Remote repo.

Local Repository

Local Repository artinya repository Maven ada di komputer kita (lokal). Itu dibuat oleh Maven ketika kita menjalankan perintah Maven apa pun.

Secara default, repositori lokal Maven ada di direktori %USER_HOME% /.m2

Misalnya: C:\Users\cahklaten\.m2\repository atau /Users/cahklaten/.m2/repository

Local Repository

Repositori lokal Maven menyimpan semua dependensi (library jar, plugin jars, dll). Saat kita menjalankan build Maven, Maven secara otomatis mengunduh semua dependensi ke dalam repositori lokal. Ini membantu untuk menghindari referensi ke dependensi yang disimpan pada mesin jarak jauh setiap kali proyek dibuat.

Central Repository

Central Repository Maven adalah repositori yang disediakan oleh komunitas Maven. Ini berisi sejumlah besar library yang umum digunakan. Jadi, bisa ada kemungkinan library yang kita butuhkan tidak ada di sini.

Ketika Maven tidak menemukan dependensi apa pun di repositori lokal, Maven mulai mencari di repositori central menggunakan URL berikut: https://repo1.maven.org/maven2/

Konsep utama dari central repository adalah sebagai berikut:

  • Repositori ini dikelola oleh komunitas Maven.
  • Tidak perlu dikonfigurasi.
  • Membutuhkan akses internet.

Untuk mencari sebuah library dari repositori central, komunitas Maven telah menyediakan URL https://search.maven.org/#browse.

Remote Repository

Terkadang, Maven tidak menemukan dependensi yang disebutkan di repositori central. Kemudian menghentikan proses build dan mengeluarkan pesan kesalahan ke console. Untuk mencegah situasi seperti itu, Maven menyediakan konsep Remote Repository, yang merupakan repositori kustom milik developer yang berisi library dimana diperlukan atau project jar lainnya.

Misalnya, menggunakan pom.xml yang disebutkan di bawah ini, Maven akan mendownload dependensi (yang tidak tersedia di repositori pusat) dari Remote Repositories yang disebutkan dalam pom.xml yang sama.

Berikut contoh isi dokumen 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>

    <groupId>POM_designPattern</groupId>
    <artifactId>POM_designPattern</artifactId>
    <version>1.0-SNAPSHOT</version>

    <dependencies>
        <!-- https://mvnrepository.com/artifact/info.cukes/cucumber-junit -->
        <dependency>
            <groupId>info.cukes</groupId>
            <artifactId>cucumber-junit</artifactId>
            <version>1.2.5</version>
            <scope>test</scope>
        </dependency>
    </dependencies>
</project>

Cara mendapatkan dependency di repositori remote adalah dengan cara:

  1. Mengakses URL https://mvnrepository.com/
  2. Cari library
  3. Klik versi
  4. Klik tab Maven
  5. Copy tag xml dependency
  6. Paste ke dokumen pom.xml
Homepage Maven Repository

Kita akan mencoba menerapkan dependency dari Maven ini untuk automation testing menggunakan bahasa Java di artikel berikutnya.

Referensi

Leave a comment