Wie kompiliere ich eine .java-Datei auf Ubuntu?

94

Wie kann ich eine .java-Datei kompilieren?

Welche Programme brauche ich? Wenn ich das Java JDK benötige, benötige ich auch Hilfe bei der Installation. Ich bin sehr neu in Ubuntu, daher brauche ich für jedes Programm, das ich installieren muss, ein Tutorial, um sie zu installieren.

user65407
quelle

Antworten:

104

Öffnen Sie zum Kompilieren der Datei Ihr Terminal und geben Sie Folgendes ein

javac filename.java

Verwenden Sie zum Ausführen der generierten Klassendatei

java filename

Dazu muss jedoch das Java JDK auf Ihrem Computer installiert sein. Sie können es mit den Anweisungen in Wie installiere ich Java? .

rɑːdʒɑ
quelle
Ähm nein. javac java_test.javaWird erfolgreich beendet, es wurde jedoch keine java_testDatei gefunden. nur eing.class
phil294
@Blauhirn ja, aber wenn du noch gerade läufst java filenamewird es funktionieren, auch wenn die Datei nicht da ist.
boltup_im_coding
2
Wenn es javacgeneriert wird, Program.classdann java Program
starte
Wenn jemand eine bekommt java.lang.ClassNotFoundException, versuche es java -cp . filename.
GyuHyeon Choi
28

OpenJDK funktioniert am besten für mich. Es ist einfach und ich habe noch nie ein Problem damit gehabt. Befolgen Sie einfach diese einfachen Schritte:

  1. Öffnen Sie vom Terminal aus jdk

    sudo apt-get install openjdk-7-jdk
  2. Schreiben Sie ein Java-Programm und speichern Sie die Datei unter dem Namen filename.java

  3. Verwenden Sie jetzt zum Kompilieren diesen Befehl vom Terminal aus

    javac filename.java

    Wenn alles gut funktioniert, sollte eine neue "filename.class" -Datei erstellt werden.

  4. Um Ihr gerade kompiliertes Programm auszuführen, geben Sie den folgenden Befehl im Terminal ein:

    java filename

HINWEIS

Sie können einen beliebigen Texteditor (wie gedit) verwenden,

Ersetzen Sie den Dateinamen durch den gewünschten Namen

Sie müssen sich in demselben Verzeichnis wie das "aktuelle Arbeitsverzeichnis" befinden (das Sie ausgeführt haben pwd), während Sie den Befehl über das Terminal ausführen.

Mrinal
quelle
2
"Fehler: Hauptklasse konnte nicht gefunden oder geladen werden"
Dev
12

Wenn zum Beispiel Ihre Datei ist my_file.java:

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

Du willst machen:

javac my_file.java

und dann

java MyClass # The name of the class, not file

Es ist jedoch eine übliche Konvention, Klassen und Dateien den gleichen Namen zu geben.

Akavall
quelle
Ich würde sagen, Ihre ursprüngliche Version war besser, da #das Kommentarzeichen in Muscheln ist.
Muru
6

Sie müssen ein JDK, Java Development Kit installieren. Ubuntu enthält ein Metapaket default-jdk , das vom aktuell bevorzugten JDK abhängt. Jetzt ist es openjdk-6-jdk.

So kompilieren Sie eine Java-Datei in eine ausführbare .class-Datei, die Sie ausführen können

javac filename.java

und lass es laufen

java file

Dies ist der einfachste Anwendungsfall und funktioniert meistens nicht, da Java-Klassen meist von anderen Java-Klassen abhängen, die in Bibliotheken abgelegt sind.

Sie möchten also wahrscheinlich anspruchsvollere Lösungen verwenden. Die meisten Texteditoren unterstützen die Hervorhebung der Java-Syntax, z. B. jEdit , kate oder vim , aber sie lösen Ihr Kompilierungsproblem nicht.

Sie haben eine andere Option - Sie können eine voll funktionsfähige Java-IDE installieren. Ubuntu wird mit den beiden wichtigsten OpenSource Java IDEs - NetBeans und Eclipse - geliefert .

Oto 'tapik' Buchta
quelle
Für eine Erstinstallation ist default-jdk ein Muss und openjdk-X-jdk ist nicht genug.
JohnRos
3

Tippe einfach ein sudo apt-get update, gefolgt von sudo apt-get install openjdk-7-jdkeiner schnellen Installation für java7, dann kannst du Spiele mit java spielen :-)

Eine ausführlichere offizielle Java-Dokumentation finden Sie unter diesem Link .

vicd
quelle
2
Ich würde vorschlagen, dass Leute, die anfangen, Java jetzt zu lernen, am besten die neueste Version, Java 7 ( sudo apt-get install openjdk-7-jdk) , lernen . Außerdem ist es am besten, Pakete vom Terminal aus zu starten, sudo apt-get updatebevor sie ausgeführt installwerden.
Eliah Kagan
7 ist nur im 12.04. 6 macht die Antwort allgemeiner
Thorbjørn Ravn Andersen