Mengakses Properti Maven di Java

1. Ikhtisar

Dalam tutorial singkat ini, kita akan melihat bagaimana menggunakan variabel yang didefinisikan di dalam pom.xml Maven dari aplikasi Java.

2. Konfigurasi Plugin

Melalui contoh ini, kami akan menggunakan Plugin Properti Maven.

Plugin ini akan mengikat fase generate-resources dan membuat file yang berisi variabel yang ditentukan di pom.xml selama kompilasi. Kami kemudian dapat membaca file itu saat runtime untuk mendapatkan nilainya.

Mari mulai dengan memasukkan plugin dalam proyek kita:

 org.codehaus.mojo properties-maven-plugin 1.0.0   generate-resources  write-project-properties   ${project.build.outputDirectory}/properties-from-pom.properties     

Selanjutnya, kami akan melanjutkan dengan memberikan nilai ke variabel kami. Selanjutnya, karena kita mendefinisikannya di dalam pom.xml , kita juga dapat menggunakan placeholder Maven:

 ${project.name} property-from-pom 

3. Properti Membaca

Sekarang saatnya mengakses properti kita dari konfigurasi. Mari buat kelas utilitas sederhana untuk membaca properti dari file di classpath:

public class PropertiesReader { private Properties properties; public PropertiesReader(String propertyFileName) throws IOException { InputStream is = getClass().getClassLoader() .getResourceAsStream(propertyFileName); this.properties = new Properties(); this.properties.load(is); } public String getProperty(String propertyName) { return this.properties.getProperty(propertyName); } }

Selanjutnya, kami hanya menulis kasus uji kecil yang membaca nilai-nilai kami:

PropertiesReader reader = new PropertiesReader("properties-from-pom.properties"); String property = reader.getProperty("my.awesome.property"); Assert.assertEquals("property-from-pom", property);

4. Kesimpulan

Pada artikel ini, kami membahas proses membaca nilai yang ditentukan di pom.xml menggunakan Plugin Maven Properties.

Seperti biasa, semua kode tersedia di GitHub.