PMD Source Code Analyzer
Apa Itu PMD?
PMD adalah alat static code analysis untuk menemukan masalah dalam kode sumber Java, Apex, JavaScript, dan beberapa bahasa lain.
Fungsi Utama
Berikut fungsi utama pada PMD :
- Mendeteksi bad practices dan kode redundan
- Menemukan bug potensial (misalnya, NullPointerException)
- Memeriksa style code agar lebih bersih dan maintainable
- Bisa diintegrasikan dengan Maven, Gradle, atau CI/CD pipeline
Contoh Penggunaan PMD di Java
Misalnya, kita punya kode Java berikut yang memiliki beberapa masalah:
public class Example {
public void badMethod() {
String message = "Hello"; // Variabel tidak digunakan
if (true) {
System.out.println("This is always true");
}
}
}Masalah yang bisa dideteksi PMD:
❌ Variabel message tidak digunakan (UnusedLocalVariable)
❌ if (true) adalah redundant conditional statement
Cara Menggunakan PMD (Java)
Install PMD via Homebrew dengan command
$ brew install pmdJalankan PMD untuk Menganalisis Kode
$ pmd check -d /path/to/project/src -R rulesets/java/quickstart.xml -f text
# -d → Direktori kode yang akan dianalisis
# -R → Ruleset yang digunakan (bisa custom)
# -f text → Format outputContoh Hasil Output PMD
Example.java:2: Avoid unused local variables such as 'message'
Example.java:3: Avoid if statements that are always true or falseDari hasil ini, kita tahu harus menghapus variabel message dan memperbaiki redundant conditional.
Integrasi dengan Maven
Jika proyek menggunakan Maven, tambahkan dependency PMD berikut. Keuntungan dengan menggunakan maven bisa otomatis mengecek kode saat build.
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-pmd-plugin</artifactId>
<version>3.15.0</version>
<executions>
<execution>
<goals>
<goal>check</goal>
</goals>
</execution>
</executions>
</plugin>Lalu jalankan:
mvn pmd:checkKesimpulan
✅ PMD membantu mendeteksi kode buruk sebelum masuk ke production.
✅ Cocok untuk proyek besar dengan banyak developer.
✅ Bisa diintegrasikan ke CI/CD agar kode lebih bersih & maintainable.
Get Firman’s stories in your inbox
Join Medium for free to get updates from this writer.
Cocok buat kamu yang ingin menulis Java yang lebih baik tanpa harus cek manual! 🚀








