Probleme wenn man keine serialVersionUID definiert?

Status
Nicht offen für weitere Antworten.
J

jago

Gast
Fuer serialisierbare Klassen kann man - oder sollte man sogar wenn man den Compiler Warnings glaubt - eine serialVersionUID definieren.


Weiss jemand warum? Hat das einen Vorteil wenn ich Objekte per ObjectOutput/InputStream speichere/lade?


Danke,
jago
 

The_S

Top Contributor
Die serialVersionUID ist so ne Art Versions-Identifizierung. Wenn du also ein Objekt in einer alten Version (mit einer anderen serialVersionUID) abspeicherst, später die Klasse veränderst und somit eine neue serialVersionUID generiert hast und dann versucht das Objekt wieder zu laden, bekommst du eine Exception, weil die Klasse des Objekts in der Zwischenzeit verändert wurde. Kannst ja mal ausprobieren, was passiert, wenn du das nicht machst ;) .
 

EgonOlsen

Bekanntes Mitglied
Hobbit_Im_Blutrausch hat gesagt.:
Kannst ja mal ausprobieren, was passiert, wenn du das nicht machst ;) .
Dasselbe, weil die ID automatisch erzeugt wird, wenn man sie nicht angibt. Mit der serialVersionUID kann man verhindern, dass jede Änderung zu einer ID-Änderung führt und damit die serialisierten Objekte bei unwesentlichen Änderungen der Klasse valide halten, was mit dem Automatismus nicht geht.
 

The_S

Top Contributor
@Egon

jetzt lass den Threadsteller doch mal ein bisschen rumprobieren. Probieren geht über studieren ;) .
 
G

Guest

Gast
EgonOlsen hat gesagt.:
Hobbit_Im_Blutrausch hat gesagt.:
Kannst ja mal ausprobieren, was passiert, wenn du das nicht machst ;) .
Dasselbe, weil die ID automatisch erzeugt wird, wenn man sie nicht angibt. Mit der serialVersionUID kann man verhindern, dass jede Änderung zu einer ID-Änderung führt und damit die serialisierten Objekte bei unwesentlichen Änderungen der Klasse valide halten, was mit dem Automatismus nicht geht.

Ich versteh halt grade die Welt nicht. Ich bekomme folgende Exception.

java.io.InvalidClassException: net.java.dev.bla.bla.MyClass; local class incompatible: stream classdesc serialVersionUID = 8798340908999271826, local class serialVersionUID = -5073758291574902811


Ich kann mir das absolut nicht erklaeren warum mein Eclipse-Projekt ohne Probleme die Klasse deserialisiert. Wenn ich per ANT den Code compiliere und als Applet laufen lasse klappt das deserialisieren nicht mehr - siehe Fehler oben :(

Du sagst: "dass jede Änderung zu einer ID-Änderung führt?" Reicht es wenn ich einmal die Klasse per Eclipse compiler compiliere und ein andesmal per Sun compiler damit die automatische ID Sache ausflippt?


Unabhaengig davon - wenn ich explizit eine ID setzte...und meine Klasse aendere...wie werde ich informiert, dass diese Aenderung noch ok ist oder die Serialisierung bricht?
 
G

Guest

Gast
Ich glaub es ja nicht. Ich habe grade die Serialisierten Objekte mit dem Code erstellt, den ich mit dem Sun-compiler compiliert hab. Nun kann er diese Objekte deserialisieren.

Nun kann ich denselben code, der aber durch Eclipse kompiliert wurde nicht mehr nutzen um die serialisierten Objekte von oben zu deserialisieren.


Fazit: Der selbe Sourcecode - einmal mit dem Sun und einmal dem Eclipse-compiler compiliert - erzeugt serialisierte Objekte die jeweils mit dem anderen code nicht mehr geladen werden koennen.

Was haltet ihr davon? Wuerde das setzen einer Serial-ID hier helfen?

Ich wuerde auch zum testen eine Serial-ID setzen - nur werden den betreffenden Sourcen eigentlich nicht von mir verwaltet - auch handelt es sich um viele Dateien.


Danke.
 

diggaa1984

Top Contributor
ob ne Änderung noch ok ist oder nicht, solltest nach Änderung der Klasse noch selbst abschätzen können, wenn du die serial selbst festlegst
 

Wildcard

Top Contributor
Fazit: Der selbe Sourcecode - einmal mit dem Sun und einmal dem Eclipse-compiler compiliert - erzeugt serialisierte Objekte die jeweils mit dem anderen code nicht mehr geladen werden koennen.
Das ist auch in Ordnung so. Deshalb sollst du ja eine ID setzen wenn du serialisierst, sonst muss der Compiler selbst eine auswählen und die Art wie er das aussucht, entscheidet er selbst. Selbst ein zusätzlicher Kommentar kann serialisierte Objekte daher ungültig machen.
 

FArt

Top Contributor
Anonymous hat gesagt.:
Fazit: Der selbe Sourcecode - einmal mit dem Sun und einmal dem Eclipse-compiler compiliert - erzeugt serialisierte Objekte die jeweils mit dem anderen code nicht mehr geladen werden koennen.

Glaube ich tatsächlich nicht. Auch Eclipse kocht nur mit Wasser (und kompiliert mit dem Compiler von SUN).
Hast du denn beide male die selbe Version des JDK verwendet, bzw. bist du sicher, dass dein Testszenario passt?
Die ID wird über die Signatur der Klasse gebildet... so lange sich diese nicht ändert, ändert sich auch die ID nicht.
 
G

Guest

Gast
diggaa1984 hat gesagt.:
ob ne Änderung noch ok ist oder nicht, solltest nach Änderung der Klasse noch selbst abschätzen können, wenn du die serial selbst festlegst

bei dem Link oben heisst es:

die serialuid - it is just the hash code of the object by default

Was heisst das? Von einer Instanz der Klasse oder von dem Klassenfile selbst der Hash?


Vor allem - kann mir einer erklaeren warum sich der automatic Hash aendert, wenn ich einmal mit dem Eclipse-Compiler und einmal mit dem Sun-Compiler die Klasse kompiliere?

Wird das Hash also aus dem class-file generiert oder warum ist er jeweils anderst?
 
G

Guest

Gast
FArt hat gesagt.:
Anonymous hat gesagt.:
Fazit: Der selbe Sourcecode - einmal mit dem Sun und einmal dem Eclipse-compiler compiliert - erzeugt serialisierte Objekte die jeweils mit dem anderen code nicht mehr geladen werden koennen.

Glaube ich tatsächlich nicht. Auch Eclipse kocht nur mit Wasser (und kompiliert mit dem Compiler von SUN).
Hast du denn beide male die selbe Version des JDK verwendet, bzw. bist du sicher, dass dein Testszenario passt?
Die ID wird über die Signatur der Klasse gebildet... so lange sich diese nicht ändert, ändert sich auch die ID nicht.

Nein. Eclipse hat einen eigenen Compiler. Hat ueberhaupt nix mit Sun zu tun und ist 100% in Java geschrieben.

Die Signatur der Klasse? Meinst du einen einfachen Hash ueber die class-Datei oder ein Hash ueber die fields, oder was heisst Signatur?


Ich bin echt verwirrt.
 

FArt

Top Contributor
Anonymous hat gesagt.:
Nein. Eclipse hat einen eigenen Compiler. Hat ueberhaupt nix mit Sun zu tun und ist 100% in Java geschrieben.

Ok, dann ist alles klar. Unterschiedliche Compiler generieren auch u.U. unterschiedlichen Bytecode.
Merkt man, dass ich nicht mit Eclipse arbeite, sondern mit einer richtigen IDE, gell ;-) *duck und weg*

Die Signatur ist nicht ganz richtig... es geht um die Signatur, die Attribute, ... müsste zu ergoogeln sein...
 
G

Guest

Gast
FArt hat gesagt.:
Anonymous hat gesagt.:
Nein. Eclipse hat einen eigenen Compiler. Hat ueberhaupt nix mit Sun zu tun und ist 100% in Java geschrieben.

Ok, dann ist alles klar. Unterschiedliche Compiler generieren auch u.U. unterschiedlichen Bytecode.
Merkt man, dass ich nicht mit Eclipse arbeite, sondern mit einer richtigen IDE, gell ;-) *duck und weg*

Die Signatur ist nicht ganz richtig... es geht um die Signatur, die Attribute, ... müsste zu ergoogeln sein...

Bitte langsam. Bin wie gesagt sehr verwirrt.

Wozu ratet ihr mir?

1. Ich soll also erstmal serialUIDs erstellen fuer alle meine serialisierbaren Klassen anstatt das AutoUID zuzulassen?

2. Da kann ich irgendeinen Long nehmen?

3. Wenn sich die Struktur der Klasse aendert warnt mich der Compiler, dass die UID nun nicht mehr stimmt? Zumindest der Eclipse-Compiler meckert gar nicht wenn ich z.B. meine Klasse von einer anderen ableite.

4. Zu den verschiedenen Compilern hat noch keiner was gesagt. Warum kommen die zu einem unterschiedlichen Ergebnis? Ist dieser Unterschied egal, wenn ich eine UID per Hand erstelle?

5. gibt es ein Java-Programm (nicht Kommandozeile), dass UIDs errechnet?
 

Wildcard

Top Contributor
1. unbedingt
2. ja, oder einfach von Eclipse generieren lassen
3. nein, tut er nicht
4. ist doch egal, ein Implementierungsdetail. Völlig egal wenn du eine eigene ID erstellst (wie man es immer tun sollte)
5. ja, aber eigentlich brauchst du das wirklich nicht und würde wohl auch nicht zu den Ergebnissen des Eclipse Compilers passen
 
G

Guest

Gast
Wildcard hat gesagt.:
1. unbedingt
2. ja, oder einfach von Eclipse generieren lassen
3. nein, tut er nicht
4. ist doch egal, ein Implementierungsdetail. Völlig egal wenn du eine eigene ID erstellst (wie man es immer tun sollte)
5. ja, aber eigentlich brauchst du das wirklich nicht und würde wohl auch nicht zu den Ergebnissen des Eclipse Compilers passen


Eigentlich soll die UID ja dazu da sein, dass man die Klasse veraendern kann aber alte serialisierte Instanzen trotzdem noch geladen werden koennen, oder?

The version control works great as long as the changes are compatible. Compatible changes include adding or removing a method or a field. Incompatible changes include changing an object's hierarchy or removing the implementation of the Serializable interface. A complete list of compatible and incompatible changes is given in the Java Serialization Specification.

Also irgendwie haette ich gerne eine Kontrolle - z.B. UIDs, sodass der Compiler mir sagt, falls ich die Klasse so veraendert habe das serialisierte Instanzen nicht mehr ladbar sind. Wenn ich beim Veraendern alles glatt geht sollte der Compiler nicht meckern.

Also ich raff das ganze Konzept der SerialUID immer noch nicht wie es scheint. Wo ist der Vorteil sowas zu haben wenn ich es nicht mal als Sicherheitskontrolle nutzen kann und der Compiler mich vor inkompatiblen Aenderungen warnt?
 

Wildcard

Top Contributor
Da ein Compiler sich die vergebenen UIDs nirgends merken kann, kann dich auch niemand warnen. Die UID dient als Kontrolle zur Laufzeit. Wenn sie nicht passt, bekommst du eine Exception.
Und um das Klarzustellen, Serialisierung ist keine sinnvolle Persistierung. Wenn es dir darum geht Anwendungsdaten flexibel zu speichern, ist Serialisierung nicht das Mittel der Wahl. Serialisierung wird eigentlich nur zur Kurzzeitspeicherung verwendet (Clipboard, Netzwerk, RMI,...), nicht um Geschäftsdaten abzulegen.
 

FArt

Top Contributor
Das Thema hat mir keine Ruhe gelassen, denn jagos Behauptung hat mich an Java zweifeln lassen.

Ich habe mir also mal die Zeit genommen, jagos Behauptung zu wiederlegen. Dazu habe ich mir sogar Eclipse installiert (keine Angst, ist schon wieder deinstalliert ;-) )

Ich habe eine Testklasse geschrieben und auf verschiedene Art und Weise unter verschiedensten Voraussetzungen eine ID generieren lassen:
Code:
package test;

import java.io.Serializable;

public class Test implements Serializable {

//  private static final long serialVersionUID = -1843941483498187456L; // generiert mit Eclipse Ganidingsbums (1.6 compliant)

//  private static final long serialVersionUID = -1843941483498187456L; // generiert mit IntelliJ 8 Plugin (1.5 compliant, SUN JDK)

//  static final long serialVersionUID = -1843941483498187456L; // generiert mit serialver.exe aus dem JDK 5 unter Windows

  private int intValue;

	private long longValue;

	private String text;

  public Test(int intValue, long longValue, String text) {
		this.intValue = intValue;
		this.longValue = longValue;
		this.text = text;
	}

	public int getIntValue() {
		return intValue;
	}

	public long getLongValue() {
		return longValue;
	}

	public String getText() {
		return text;
	}

}

Die sehen verdammt ähnlich aus, oder?

Danach habe ich (nur noch der Vollständigkeit halber) die Klasse aus Eclipse (nach obiger Info irgend ein Compiler von IBM (?)) geschrieben und über IntelliJ (SUN JRE 5) gelesen. Das ganze ohne explizit die servialVersionUID vorher an der Klasse generiert zu haben. Hat erwartungsgemäß geklappt.

Somit saß der Fehler doch davor, das Testszenario von jago war nicht sauber.
 

gizmo

Bekanntes Mitglied
Die serialVersionUID wird für daselbe Classfile immer dieselbe sein. Es ist spezifiziert, wie sie generiert werden soll. Standardkonforme JVMs (nicht Compiler) werden also immer dieselbe UID generieren. Die UID wird nicht beim Compilen erzeugt, sondern zur Laufzeit errechnet.
Das Problem ist, dass sich synthetic Methoden auf die UID auswirken. Es ist nicht genau spezifiziert wann und wie die synthetic Methoden generiert werden. Der Sun Compiler macht dies anders als der Eclipse Compiler. -> Unterschiedliche UID
 

FArt

Top Contributor
gizmo hat gesagt.:
Die serialVersionUID wird für daselbe Classfile immer dieselbe sein. Es ist spezifiziert, wie sie generiert werden soll. Standardkonforme JVMs (nicht Compiler) werden also immer dieselbe UID generieren. Die UID wird nicht beim Compilen erzeugt, sondern zur Laufzeit errechnet.
Das Problem ist, dass sich synthetic Methoden auf die UID auswirken. Es ist nicht genau spezifiziert wann und wie die synthetic Methoden generiert werden. Der Sun Compiler macht dies anders als der Eclipse Compiler. -> Unterschiedliche UID

Es wurde nicht erwartet, dass die UID vom Compiler generiert wird, aber dass die generierte UID der entspricht, die auch zur Laufzeit gebildet wird (wenn nicht explizit gesetzt).

Ich behaupte ja immer noch, dass die UID zur Compilezeit bestimmt werden kann, denn auch die synthetischen Methoden stehen da bereits fest, oder sehe ich das falsch?

Dein Einwand klingt nach profundem Wissen. Kannst du die Behauptung mit externen Quellen belegen oder zumindest ein Beispiel erbringen? In der JLS ist dies nämlich nicht erwähnt bzw. ich habe nichts passendes gefunden... klar, ist ja wohl auch nicht spezifiziert, obwohl es auch gute Specs gibt, in denen expliztit auf (wichtige) nicht spezifizierte Bereiche eingegangen wird.
 

gizmo

Bekanntes Mitglied
Ich sage nicht, die UID könnte nicht zur Compilezeit bestimmt werden, ich sage nur, dass sie dies nicht wird. Tut aber nichts zur Sache.
Schau dir ObjectStreamClass#_computeSerialVersionUID dort wird die UID generiert. Die angewendeten Regeln sind hier definiert: http://java.sun.com/j2se/1.3/docs/guide/serialization/spec/class.doc6.html#4100.

Ich denke, es ist nicht spezifiziert, dass javac die UID nicht generieren soll, da aber auch nicht spezifiziert ist, dass er sie generieren soll, wird dies nicht gemacht. Ansonsten müsste man bei einer Software immer auch alles spezifizieren, was sie nicht macht...

Siehe auch hier: http://wiki.eclipse.org/FAQ_Why_doe...eate_a_different_serialVersionUID_from_javac?
 

FArt

Top Contributor
Danke, das ist der wichtige Satz aus der Spec:
different implementations of compilers could use different names for synthetic members.


gizmo hat gesagt.:
Ansonsten müsste man bei einer Software immer auch alles spezifizieren, was sie nicht macht...
Müssen nicht, aber ein gute Spec legt nicht nur fest, was durch sie garantiert ist, sondern auch was nicht garantiert wird... Abgrenzungen.
 
J

jago

Gast
FArt hat gesagt.:
Danke, das ist der wichtige Satz aus der Spec:
different implementations of compilers could use different names for synthetic members.


gizmo hat gesagt.:
Ansonsten müsste man bei einer Software immer auch alles spezifizieren, was sie nicht macht...
Müssen nicht, aber ein gute Spec legt nicht nur fest, was durch sie garantiert ist, sondern auch was nicht garantiert wird... Abgrenzungen.


Alles was ich sagen kann ist, dass ich 20 Klassen habe bei denen Eclipse und Sun beide keine Probleme machen. Bei 2 Klassen machen sie halt Probleme. Diese 2 Klassen sind sehr complex mit einer langen Vererbungshierarchie und vielen Interfaces.

Vielleicht liegt es daran.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
M Probleme bei Eclipse wenn ich entpacke Allgemeine Java-Themen 15
C Probleme beim Erstellen eines runnable-jar files Allgemeine Java-Themen 1
S Umstellung von File auf Path - Probleme mit Stream Allgemeine Java-Themen 5
C Probleme mit javax.mail.Session Allgemeine Java-Themen 8
M tomcat probleme Allgemeine Java-Themen 1
N Division macht Probleme Allgemeine Java-Themen 14
B Java Reflection Probleme beim wehcselseitigen Referenzieren zweier Klassen/Objekte Allgemeine Java-Themen 14
MarvinsDepression Probleme mit relativem Dateipfad Allgemeine Java-Themen 1
G Geotools Probleme nach PC-Wechsel Allgemeine Java-Themen 6
nibe1501 GUI Probleme Allgemeine Java-Themen 16
C Probleme mit dem WindowBuilder Allgemeine Java-Themen 3
P Selenium . Probleme ein Iron Icon Element anzusprechen Allgemeine Java-Themen 2
B Compiler-Fehler Probleme beim Kompilieren mit Jsoup Allgemeine Java-Themen 8
K VisualVM Profiling Remote Probleme Allgemeine Java-Themen 1
O Leerzeichen und Umlaute im Pfad einer Java Applikation machen Probleme Allgemeine Java-Themen 13
D Regex Probleme Allgemeine Java-Themen 2
M Probleme jar datei. Allgemeine Java-Themen 2
L Vererbung Verständnis Probleme Vererbung Allgemeine Java-Themen 2
Dann07 Probleme mit OpenAL Allgemeine Java-Themen 0
V Threads Probleme beim Aufrufen von Methoden einer anderen Klasse (Threads) Allgemeine Java-Themen 14
V Compiler-Fehler Online Compiler Probleme Allgemeine Java-Themen 4
M Probleme mit Negamax-Algorithmus Allgemeine Java-Themen 29
M Probleme mit BigDecimal Allgemeine Java-Themen 1
T Probleme mit NumberFormat Allgemeine Java-Themen 5
J Probleme exe-Start mit Task Scheduler Allgemeine Java-Themen 1
B Input/Output Probleme beim Ausführen von Shell-Befehlen mit Java Allgemeine Java-Themen 28
J Probleme beim einbinden von Zip4j library Allgemeine Java-Themen 6
F Variablen Palindromzahl (Probleme mit Methode) Allgemeine Java-Themen 9
K Data Konverter - Probleme mit Byte[] Kodierung Allgemeine Java-Themen 3
T Probleme mit dem Pfad zum Propertie file Allgemeine Java-Themen 7
H Swing HashMap zu Tabelle macht mir Probleme Allgemeine Java-Themen 4
Neoline Interpreter-Fehler Probleme mit Arrays.toString Allgemeine Java-Themen 7
F SQLite mit Java / Probleme beim INSERT Befehl Allgemeine Java-Themen 4
J Erste Schritte Probleme mit der Hauptklasse Allgemeine Java-Themen 14
J Tetris Probleme bei Klassen Allgemeine Java-Themen 14
J MinMax VierGewinnt Probleme Allgemeine Java-Themen 22
J Probleme mit CodeCoverage und Lombok Equals Allgemeine Java-Themen 1
S Eclipse Probleme beim Implementieren / Ausführen von jUnit 5-Test Suites Allgemeine Java-Themen 14
R Snake Probleme Allgemeine Java-Themen 2
A Probleme beim Verstehen einer Aufgabenstellung Allgemeine Java-Themen 11
RalleYTN 3D Objekt Translation basierend auf Rotation (Probleme mit Z Rotation) Allgemeine Java-Themen 0
Bluedaishi Druck Probleme mit PDF dateien Allgemeine Java-Themen 4
G Ant Probleme bei einer Installation die Apache ant+ivy verwendet Allgemeine Java-Themen 14
E TableView Probleme Allgemeine Java-Themen 7
perlenfischer1984 Probleme beim Mocken Allgemeine Java-Themen 6
S Kaffemaschine Programmierung Probleme Allgemeine Java-Themen 2
K Threads Runtime und Process Probleme Allgemeine Java-Themen 3
S Probleme mit unterschiedlichen Java-Versionen (Mac OS X 10.11) Allgemeine Java-Themen 0
S Event Handling keyPressed()-Probleme Allgemeine Java-Themen 2
VfL_Freak Große und seltsame Probleme nach Java-Update auf V1.8.0_91 Allgemeine Java-Themen 3
P Probleme mit Grafik (Java) Allgemeine Java-Themen 6
R probleme beim starten von jar unter linux Allgemeine Java-Themen 2
H Probleme mit DAY_OF_WEEK Allgemeine Java-Themen 4
Arif Probleme mit NullPointerException Allgemeine Java-Themen 2
E Probleme mit nextInt() und Exception Allgemeine Java-Themen 35
Streeber Probleme mit AWT-EventQueue: ArrayList Elemente hinzufügen Allgemeine Java-Themen 1
D Performance-Probleme mit Joda-Time Allgemeine Java-Themen 3
M Probleme beim rechnen, bei Zahlen mit führenden Nullen. Allgemeine Java-Themen 7
RalleYTN Probleme mit Encrypting Allgemeine Java-Themen 10
M Probleme mit Schriftarten PDFBox Allgemeine Java-Themen 3
J Probleme mit der Java-Runtime Allgemeine Java-Themen 10
G Probleme mit BufferedWriter und URL Allgemeine Java-Themen 4
S Probleme mit meinem MacBook Pro DRINGEND HILFE erbeten! Allgemeine Java-Themen 17
Androbin Interpreter-Fehler Probleme mit Rekursion - StackOverflowError Allgemeine Java-Themen 8
E JCuda-0.6.5 Probleme beim ausführen der Datei Allgemeine Java-Themen 0
M Runtime.exec() verursacht auf manchen Systemen Probleme - Ursache unklar Allgemeine Java-Themen 2
W JNDI - LDAP - Probleme beim editieren von Usern Allgemeine Java-Themen 0
R DBUnit Performance Probleme Allgemeine Java-Themen 0
S Probleme mit Collection Allgemeine Java-Themen 7
L Probleme mit Jar Allgemeine Java-Themen 6
N Zahlensysteme umrechnen; Probleme beim Umwandeln Allgemeine Java-Themen 4
K OOP OOP Gui Spiel + Vererbungen Probleme durch Nichtwissen!! Allgemeine Java-Themen 1
F Java Native/Shared Library (.so) laden macht Probleme Allgemeine Java-Themen 3
J Synchronized Probleme Allgemeine Java-Themen 7
J Java Progressbar & Download Probleme Allgemeine Java-Themen 10
S Probleme mit dem filechooser Allgemeine Java-Themen 1
J Comperator Probleme Allgemeine Java-Themen 4
A Probleme beim auslesen von Quelltext (HTML) Allgemeine Java-Themen 5
S Probleme mit Webappplikation Allgemeine Java-Themen 5
L Plötzlich Probleme mit der JVM :( Allgemeine Java-Themen 6
S starke performance probleme des forums Allgemeine Java-Themen 10
K Probleme bei Berechnung der Komplexität Allgemeine Java-Themen 7
R JRE Ablaufdatum seit 7u10 - Probleme bei selbst ausgelieferter JRE bekannt? Allgemeine Java-Themen 3
H Reg Exp Probleme Allgemeine Java-Themen 5
M Classpath Probleme bei JAR Generierung Allgemeine Java-Themen 2
S Probleme mit JAVA-Installation Allgemeine Java-Themen 3
D Probleme bei for-Schleife Allgemeine Java-Themen 4
R Probleme mit Javadoc Allgemeine Java-Themen 2
G Gson Probleme Allgemeine Java-Themen 2
P KI für TicTacToe programmieren > Probleme Allgemeine Java-Themen 2
M Google App Engine macht Probleme Allgemeine Java-Themen 4
H Probleme mit finally-Block und close() Allgemeine Java-Themen 4
F 2d array probleme Allgemeine Java-Themen 2
M 3D-Grafik Probleme beim drehen von Objekten Allgemeine Java-Themen 9
T Interface Probleme Allgemeine Java-Themen 8
C Eclipse Probleme bei selbst erstelltem Algorithmus Allgemeine Java-Themen 2
M Probleme mit String in Label übergeben. Allgemeine Java-Themen 6
H MediaManager Fragen/Probleme Allgemeine Java-Themen 6
U Probleme mit Kopiervorgang Allgemeine Java-Themen 3
S Probleme beim Auslesen einer Liste Allgemeine Java-Themen 8

Ähnliche Java Themen

Neue Themen


Oben