From Fedora Project Wiki
Java FAQ
Fragen zur Java-Umgebung unter Fedora
File:De DE JavaFAQ WikiGraphics/Fedora_Design.png
Inhaltsverzeichnis

Allgemeines

Was ist die Java-Umgebung unter Fedora Core?

Die Java-Umgebung unter Fedora Core besteht aus drei Komponenten: GNU Java -Laufzeitumgebung ("libgcj"), dem ["Eclipse"] -Javacompiler ("ecj") sowie einem Satz Wrapper und Links ("java-gcj-compat"), die Laufzeitumgebung und Compiler dem Nutzer wie andere Java-Umgebungen präsentiert.

Wie genau wird diese Java-Umgebung genannt?

Es gibt keinen Namen für die Umgebung als Ganzes. Die Namen der einzelnen Komponenten ist libgcj, ecj und java-gcj-compat.

Braucht libgcj nicht kompilierten Kode? Ich möchte nur jar-Dateien ausführen!

libgcj kann sehr wohl jar-Dateien ausführen. Das Kommando java Ihrer Fedora-Kiste führt Java-Bytecode wie jede andere Java-Umgebung aus.

Ich habe es nicht bei der Installation mit aufgespielt, brauche es aber jetzt. Was muss ich tun?

Fedora bietet das Werkzeug yum zum Verwalten von Software. Um die Laufzeitumgebung zu installieren brauchen Sie nur folgendes Kommando auszuführen:

yum install java-1.4.2-gcj-compat

Um die vollständige Entwicklungsumgebung zu installieren, geben Sie ein:

yum install java-1.4.2-gcj-compat-devel


Fedoras Java-Umgebung bietet nicht die von mir benötigte Funktionalität. Kann ich eine andere installieren?

Das JPackage-Projekt verfügt über Pakete für die verschiedensten Java-Umgebungen, freie und proprietäre. Diese Pakete sind dafür eingerichtet, dass mehrere Installationen gleichzeitig betrieben werden können. Die Java-Umgebung von Fedora ist vollständig kompatibel mit diesem System.

Die Installation einer JPackage-Java-Umgebung ist detailliert beschrieben unter:

Andere Java-Umgebungen als JPackage könnten mit der von Fedora in Konflikt geraten und werden daher nicht empfohlen.


Nutzung

Wo ist das alles?

Java-Pakete in Fedora basieren im wesentlichen auf und sind kompatibel zu denen des JPackage-Projekts. Deren Paketbau-Infrastruktur- Policy-Dokumentation ist im Paket jpackage-utils enthalten. Die Kommandos (java, javac, jar etc.) befinden Sich im Systempfad, das Haupt-Jar-Repository ist /usr/share/java und das Erweiterungs-Jar-Repository ist /usr/share/java-ext.


Gibt es Teile der Java-Plattform, die in Fedora nicht vorhanden sind oder nicht funktionieren?

Die Antworten beziehen sich auf die Implementation in FC6 (einschließlich Aktualisierungen), wenn nicht anders angegeben.

Die Sprache Java

Bis auf ein paar Punkte ist das meiste der Sprache implementiert.

  • Assertions sind fast vollständig implementiert, aber keiner hat bisher eine Möglichkeit zur Verfügung gestellt, sie zu aktivieren!
  • Keins der mit Java 1.5 neuen Merkmale wurde bisher implementiert.

Werkzeuge

  • Die folgenden Werkzeuge des JDK 1.5 sind noch nicht in libgcj enthalten: apt, ControlPanel, extcheck, HtmlConverter, idlj, javap, java-rmi.cgi, javaws, jconsole, jdb, jinfo, jmap, jps, jsadebugd, jstack, jstat, jstatd, kinit, klist, ktab, native2ascii, orbd, pack200, policytool, rmid, serialver, servertool, tnameserv und unpack200


Was ist mit dem Starten von Java-Applets im Browser?

Fedora Core 6 enthält eine Vorabversion von gcjwebplugin, einem Firefox-Plugin für Java-Applets. gcjwebplugin ist standardmäßig nicht aktiviert, da - obwohl die Sicherheitsimplementation in GNU Classpath ist aktiv entwickelt wird - es für die Ausführung nicht vertrauenswürdiger Applets noch nicht ausgereift genug ist. Das heißt, dass die AWT- und Swing-Implementationen in GNU Classpath weit genung entwickelt sind, um viele der im Web vorhandenen Applets auszuführen. Abenteuerlustige Nutzer, die gcjwebplugin ausprobieren wollen, können das mit dem libgcj-RPM installierte /usr/share/doc/libgcj-4.1.1/README.libgcjwebplugin.so lesen. Dieses README erklärt, wie das Plugin aktiviert wird und welche Risiken damit verbunden sind.

Ein Programm nutzt Klassen, die nicht vom GCJ unterstützt werden. Was kann ich tun, damit das funktioniert?

Wenn der fragliche Klassenname mit sun. oder com.sun. beginnt, lesen Sie bitte

anderenfalls die nächste Frage.

Wie kann ich beim Entwickeln des GCJ helfen?

Wenn Sie kein Programmierer sind oder aus rechtlichen Gründen keine Patches zum GCJ beitragen dürfen, lesen Sie bitte die nächste Frage.

Die meiste Entwicklungsarbeit am GCJ (Klassenbibliotheken, Werkzeuge) läuft derzeit an GNU Classpath, GCJ-spezifische Arbeit (Compiler, CNI) am GCC. Fehlerberichte werden im GCC Bugzilla gesammelt.


Wie kann ich bei der Entwicklung vom GCJ ohne Programmieren helfen?

Sie können am meisten helfen, in dem Sie Ihre Applets und Anwendungen in Fedoras freier Laufzeitumgebung ausprobieren und gute Fehlerberichte einsenden, wenn sie nicht funktionieren. Wenn Sie Fehlermeldungen zu Fedoras Laufzeitumgebung erstellen, dann zur Komponente java-1.4.2-gcj-compat.


Wie erhalte ich Stack-Traces von Java-Programmen für das Melden von Fehlern?

Lesen Sie JavaStackTraces


Warum werden meine ausführbaren JAR-Dateien geöffnet statt ausgeführt?

Die Standardaktionnn für .jar-Dateien ist, sie wie normale .zip-Dateien zu behandeln. Es gibt zwei Möglichkeiten, dies zu ändern:

  • Registrieren Sie ein binfmt für .jar (siehe /usr/share/doc/kernel-doc-*/Documentation/java.txt)
  • Andern Sie die Standardaktion in dem von Ihnen verwendeten. In Nautilus müsste es so gehen: klicken Sie mit der rechten Maustaste auf eine .jar-Datei, danach Eigenschaften > Öffnen mit... > Hinzufügen > Nutzerkommando > xterm -e java -jar.

Probleme mit Java-Paketen in Fedora Core

Sehen Sie in Bugzilla nach.

Probleme mit Java-Paketen in Fedora Extras

Azureus
erlang
itext
jakarta-commons-cli
JOGL
kawa
PDFTK
plplot
RSSOwl

Weitere Quellen

  • [1] - Ein Überblick über das GCJ-System
  • [2]
  • [3]