Cara Mengompilasi Program Java: Panduan Ramah Pemula untuk javac, Pengaturan PATH, dan Kesalahan Umum

When you start learning Java, the very first wall you will face is “compilation.” Merely writing source code (.java) will not run anything — you must compile it using the javac command to generate a .class file, and only then can the program be executed. In this article, we summarize the Java compilation procedure, basic usage of javac, PATH configuration, and solutions for common beginner errors — in a flow that even a total beginner can follow step-by-step. The goal is to move from “What do I even start with for Java compilation?” to confidently typing commands without hesitation.

Apa Itu Kompilasi Java?|Penjelasan Ramah Pemula tentang “Kompilasi”

Di Java, “kompilasi” adalah proses mengubah kode sumber yang ditulis manusia (.java) menjadi format yang dapat dibaca oleh Java Virtual Machine (JVM). Output yang dihasilkan adalah file .class, yang disebut bytecode.

Berbeda dengan bahasa seperti C yang langsung dikompilasi ke kode asli, Java mengambil langkah perantara — kode sumber pertama kali diubah menjadi bytecode, lalu dijalankan di JVM. Mekanisme ini memungkinkan file .class yang sama dijalankan di lingkungan OS yang berbeda — yang berarti Anda dapat menjalankan program Java yang sama persis di Windows, macOS, atau Linux.

Elemen penting lain yang harus Anda pahami: kompilasi dan eksekusi adalah tindakan terpisah.

  • “javac” → menangani kompilasi
  • “java” → menangani eksekusi

Sebagian besar pemula gagal karena perbedaan ini tidak jelas bagi mereka. Menjelaskan “dua peran berbeda” ini menjadi langkah pertama yang paling efisien dalam pemahaman Anda.

Persiapan yang Diperlukan Sebelum Mengompilasi Java

Untuk mengompilasi Java, Anda harus memiliki JDK (Java Development Kit) terinstal. JRE saja tidak dapat mengompilasi kode karena alat kompilator javac hanya termasuk dalam JDK.

Mulailah dengan memeriksa ini:

javac -version

Jika perintah ini mengembalikan nomor versi, Anda sudah siap. Jika Anda mendapatkan “command not found” atau kesalahan serupa, salah satu dari berikut ini sangat mungkin terjadi:

  • JDK tidak terinstal
  • JDK terinstal tetapi PATH tidak disetel
  • Anda hanya memiliki JRE terinstal (tanpa kit pengembangan)

Konfigurasi PATH terutama menjadi kendala bagi pengguna Jepang. Jika sistem operasi tidak mengenali jalur hingga javac.exe (atau direktori /bin), kompilasi tidak akan berhasil.

Kesimpulan: “Siapkan JDK” dan “Verifikasi PATH” — hanya dengan kedua hal ini yang dapat Anda berdiri di garis awal sebenarnya dari kompilasi Java.

Mari Sebenarnya Mengompilasi File Java

Di sini, kita akan membuat kode contoh dan memverifikasi prosedur untuk mengompilasinya dengan javac. Pertama, simpan konten berikut dengan editor teks.

Sample.java

public class Sample {
    public static void main(String[] args) {
        System.out.println("Hello Java!");
    }
}

Nama file harus Sample.java, dan nama kelas publik harus cocok dengan nama file. Jika aturan ini dilanggar, kompilasi akan gagal — ini salah satu kesalahan pemula yang paling umum.

Selanjutnya, jalankan perintah berikut di terminal / command prompt:

javac Sample.java

Jika semuanya berjalan normal, Sample.class akan dihasilkan di folder yang sama. Ini menunjukkan “kompilasi selesai.”

Jadi, pada saat ini:

  • Sample.java (sumber)
  • Sample.class (bytecode)

Pasangan ini sekarang siap. Pada tahap ini, Anda siap untuk “menjalankan program Java.”

Cara Menjalankannya Setelah Kompilasi

Setelah kompilasi selesai, langkah berikutnya adalah menjalankan file .class. Perintah yang digunakan di sini adalah java — bukan javac.

java Sample

Poin penting: jangan menulis ekstensi .class. Menulis java Sample.class akan menyebabkan kesalahan. Java dirancang untuk mengeksekusi berdasarkan nama kelas (tanpa ekstensi).

Ringkasan terorganisir:

RoleCommandTarget
Compilejavac Sample.java.java file
Runjava SampleClass name (without extension)

Jika Anda memahami pergantian peran antara javac dan java, Anda telah melewati tahap pemula.

Jika “Hello Java!” muncul dengan sukses, prosesnya berhasil.
Pada titik ini Anda telah memahami alur minimum Java.

Kesalahan Sering Terjadi dan Cara Memperbaikinya

Dalam kompilasi Java, menemukan kesalahan di awal adalah hal yang sepenuhnya normal.
Di sini kami hanya fokus pada kesalahan yang sering dialami pemula Jepang.

1) javac: command not found / 'javac' is not recognized…

Dalam hampir 100% kasus, penyebabnya adalah salah satu dari berikut:

  • JDK belum terinstal
  • PATH belum dikonfigurasi

Perbaikan:
Jalankan javac -version untuk memverifikasi
→ Jika tidak ada output, instal ulang JDK dan tinjau konfigurasi PATH.

2) Kompilasi berhasil tetapi tidak ada file .class yang dihasilkan

Masalah paling umum di antara pemula Jepang adalah ini:

Nama file dan nama kelas publik tidak cocok

Contoh — Jika Sample.java berisi:

public class Test {
}

→ Ini akan menghasilkan kesalahan kompilasi.

3) Peringatan terkait encoding karakter

warning: [options] bootstrap class path not set in conjunction with -source 1.7

Peringatan seperti ini tidak fatal pada kebanyakan kasus.
Namun, mereka dapat menunjukkan pengaturan versi lama atau encoding yang tidak cocok.
Menyimpan file dalam UTF-8 adalah pilihan paling aman.

Kompilasi Menggunakan IDE

Dalam pengembangan Java dunia nyata, Anda jarang mengetik javac secara manual di terminal setiap kali.
Hal ini karena IDE (Integrated Development Environment) secara otomatis menangani kompilasi di latar belakang.

Berikut tiga IDE yang sangat populer di Jepang dan juga praktis untuk belajar:

IDECharacteristics
IntelliJ IDEAThe de-facto standard for modern Java development. Suitable for professional use.
EclipseLong history, widely used in enterprise projects.
VSCodeLightweight. Java Extension Pack enables a proper Java environment.

Di IDE, kompilasi terjadi secara otomatis setiap kali Anda menyimpan file — dan lokasi kesalahan langsung divisualisasikan.
Ini berarti Anda dapat melewati hambatan pemula seperti “mengetik salah javac” atau “konfigurasi PATH yang salah.”

Namun, masih benar bahwa ada nilai besar dalam mengalami javac secara manual setidaknya sekali untuk memahami cara kerja Java.
Setelah Anda memahami alur “compile → run” secara manual, kecepatan pemahaman Anda meningkat drastis ketika beralih ke pengembangan berbasis IDE.

Dasar-dasar Opsi javac

javac bukan hanya “konverter .java → .class.” Anda dapat menambahkan beberapa opsi untuk mengontrol perilaku kompilasi.
Namun pada tahap pemula, Anda tidak perlu menghafal semuanya — cukup mengetahui opsi yang paling sering digunakan.

Berikut tiga contoh representatif:

OptionMeaningExample
-dSpecify output directory for .class filesjavac -d out Sample.java
-classpathSpecify classpath for external libraries / other directoriesjavac -classpath lib/* Sample.java
--enable-previewEnable preview language featuresjavac --enable-preview Sample.java

Terutama -d hampir wajib saat menggunakan paket.
Misalnya, jika Anda menulis package com.example;, Anda harus menggunakan javac -d untuk menghasilkan struktur direktori yang benar di bawah direktori output.

Saat Anda masuk ke pekerjaan nyata, spesifikasi classpath dan penggunaan -d meningkat drastis.
Hanya dengan mengetahui nama-nama ini pada tahap ini membuat pembelajaran selanjutnya lebih lancar.

Ringkasan

Untuk menjalankan program Java, Anda harus memahami urutan 3 langkah: menulis sumber → kompilasi → eksekusi.
Terutama jika Anda memisahkan peran javac (kompilasi) dan java (eksekusi) secara mental, alasan “mengapa kompilasi diperlukan” tiba-tiba menjadi jelas.

Selain itu, pemula biasanya terjebak pada dua titik berikut:

  • JDK belum terinstal / PATH belum dikonfigurasi
  • Nama file dan nama kelas publik tidak sama

Jika Anda menyelesaikan dua hal ini saja, Anda akan menghindari penyimpangan besar dalam fase pembelajaran.
Setelah terbiasa dengan dasar-dasar, beralih ke pengembangan IDE sepenuhnya baik.
Namun, apakah Anda “memahami mekanisme di dalamnya” adalah apa yang kemudian menciptakan perbedaan dalam kecepatan pemahaman.

Gunakan artikel ini sebagai titik awal dan pertama kali berhasil menyelesaikan .java → .class satu kali.
Itu adalah tonggak pencapaian pertama dalam belajar Java.

FAQ: Pertanyaan yang Sering Diajukan tentang Kompilasi Java

Q1: Apa perbedaan antara javac dan java?
A: javac adalah perintah untuk kompilasi — ia mengubah .java menjadi .class.
 Sementara itu, java adalah perintah untuk eksekusi — ia menjalankan .class di JVM.

Q2: Sample.class tidak dihasilkan. Apa penyebabnya?
A: Penyebab paling umum adalah bahwa nama file dan nama public class tidak cocok.
 Jika kelasnya adalah public class Sample, maka file harus Sample.java.

Q3: Jika saya menggunakan IDE, apakah saya tidak perlu lagi belajar javac?
A: IDE mengkompilasi secara otomatis di latar belakang, tetapi jika Anda tidak memahami mekanismenya, menjadi lebih sulit untuk memahami apa yang sebenarnya terjadi.
 Mengalami alur dasar sekali membantu Anda memahami perilaku IDE lebih cepat.

Q4: JDK mana yang harus saya instal?
A: Untuk pemula, build LTS Temurin (Eclipse Adoptium) mudah digunakan.
 Jika Anda tidak memiliki alasan khusus, pilih Java 17 atau 21.

Q5: Saya mendapat javac: command not found
A: Entah JDK tidak terinstal atau PATH tidak dikonfigurasi.
 Pertama jalankan javac -version untuk memeriksa apakah dikenali.