Bagaimana cara mengkompilasi file .java di Ubuntu?


94

Bagaimana saya bisa mengkompilasi file .java?

Program apa yang akan saya butuhkan? Jika saya memerlukan Java JDK saya juga akan memerlukan bantuan untuk menginstalnya. Saya sangat baru di Ubuntu, jadi setiap program yang perlu saya instal, saya akan memerlukan tutorial tentang cara menginstalnya.

Jawaban:


104

Untuk mengkompilasi file, buka terminal Anda dan ketik

javac filename.java

Untuk menjalankan file kelas yang dihasilkan, gunakan

java filename

Tetapi untuk melakukan ini Anda harus menginstal Java JDK di komputer Anda. Anda dapat menginstalnya dengan instruksi di Bagaimana cara menginstal Java? .


umm .. tidak. javac java_test.javaselesai dengan sukses, tetapi tidak ada java_testfile untuk ditemukan. hanya ag.class
phil294

@ Blauhirn ya, tetapi jika Anda masih menjalankannya java filenameakan berfungsi, meskipun file tersebut tidak ada.
boltup_im_coding

2
Jika javacmenghasilkan Program.classkemudian jalankan denganjava Program
spencer.sm

Jika seseorang mendapat java.lang.ClassNotFoundException, coba java -cp . filename.
GyuHyeon Choi

28

OpenJDK bekerja paling baik untuk saya. Sederhana dan saya tidak pernah menghadapi masalah dengannya. Cukup ikuti langkah-langkah sederhana ini:

  1. Dari Terminal, instal jdk terbuka

    sudo apt-get install openjdk-7-jdk
  2. Tulis program java dan simpan file tersebut sebagai filename.java

  3. Sekarang untuk mengkompilasi, gunakan perintah ini dari terminal

    javac filename.java

    Jika semuanya berfungsi dengan baik maka file "filename.class" baru harus dibuat.

  4. Untuk menjalankan program Anda yang baru saja dikompilasi, ketikkan perintah di bawah ini di terminal:

    java filename

CATATAN

Anda dapat menggunakan editor teks apa saja (seperti gedit),

ganti nama file dengan nama apa pun yang Anda inginkan

Anda harus berada di direktori yang sama dengan "direktori kerja saat ini" (didapat dengan menjalankan pwd) saat menjalankan perintah dari terminal.


3
"Kesalahan: Tidak dapat menemukan atau memuat kelas utama"
Dev

12

Jika misalnya file Anda adalah my_file.java:

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

Anda ingin melakukan:

javac my_file.java

lalu

java MyClass # The name of the class, not file

Namun, itu adalah konvensi umum untuk memberikan kelas dan file nama yang sama.


Saya akan mengatakan versi asli Anda lebih baik, karena #karakter komentar dalam shell.
muru

6

Anda perlu menginstal JDK, Java Development Kit. Ubuntu berisi metapackage default-jdk , yang tergantung pada JDK yang saat ini disukai. Sekarang openjdk-6-jdk.

Untuk mengkompilasi file Java ke runnable .class file Anda dapat menjalankan

javac filename.java

dan jalankan

java file

Ini adalah kasus penggunaan yang paling sederhana dan sebagian besar tidak berfungsi karena kelas java sebagian besar tergantung pada kelas java lainnya yang ditempatkan di perpustakaan.

Jadi, Anda mungkin ingin menggunakan beberapa solusi yang lebih canggih. Kebanyakan editor teks mendukung penyorotan sintaksis Java, misalnya jEdit , kate atau vim , tetapi mereka tidak menyelesaikan masalah kompilasi Anda.

Anda memiliki opsi lain - Anda dapat menginstal IDE Java berfitur lengkap. Ubuntu hadir dengan kedua OpenSource Java IDEs utama - NetBeans dan Eclipse .


Untuk instalasi pertama, default-jdk adalah suatu keharusan dan openjdk-X-jdk tidak cukup.
JohnRos

3

Cukup ketik sudo apt-get update, diikuti oleh sudo apt-get install openjdk-7-jdkuntuk instalasi cepat untuk java7, maka Anda dapat bermain game dengan java :-)

Untuk dokumentasi resmi Java yang lebih terperinci, silakan kunjungi tautan ini .


2
Saya menyarankan agar orang yang mulai belajar Java sekarang akan lebih baik mempelajari versi terbaru, Java 7 ( sudo apt-get install openjdk-7-jdk). Juga, sebaiknya dijalankan sudo apt-get updatesebelum mengambil installpaket dari Terminal.
Eliah Kagan

7 hanya hadir dalam 12,04. 6 membuat jawabannya lebih umum
Thorbjørn Ravn Andersen
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.