Jackery IFA Fireplace
Mobile

Java .sbu zu .vcf konvertieren

treib0r

Lt. Commander
Registriert
Feb. 2009
Beiträge
1.081
Nabend!

Ich habe meine Kontake vom Samsung Handy via Kies als .sbu Datei gespeichert. Dank eines neuen Roms auf dem Handy, kann ich die Kontake via Kies nicht mehr wiederherstellen.

Nun habeich das hier gefunden, scheitere jedoch an der Durchführung.
http://mobilecon.info/restore-data-inside-sbu-file-using-kies.html

Was mache ich falsch?

C:\Program Files (x86)\Java\jre6\bin>java SSVCardExtractor.java java SSVCardExtractor 8.sbu output.vcf
Exception in thread "main" java.lang.NoClassDefFoundError: SSVCardExtractor/java

Caused by: java.lang.ClassNotFoundException: SSVCardExtractor.java
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
Could not find the main class: SSVCardExtractor.java. Program will exit.

C:\Program Files (x86)\Java\jre6\bin>java SSVCardExtractor.java java SSVCardExtractor 8.sbu output.vcf
 
Es hat schon ein Grund, wieso in deiner Anleitung beim ersten Befehl ein "javac" und nicht einfach ein "java" Aufruf steht: der erste Befehl übersetzt die Quellcodedatei in Java-Bytecode, der zweite führt das Programm aus. Zum Übersetzen reicht jedoch die JRE nicht aus ("javac" ist dort nicht vorhanden), du benötigst dafür das JDK.

EDIT: Ich hab dir das Programm mal übersetzt, einfach alle Dateien in einen Ordner kopieren und von diesem Ordner aus den zweiten Befehl ausführen.
 

Anhänge

Zuletzt bearbeitet:
Ich hatte es auch mit javac versucht und eine Fehlermeldung erhalten.
Der Fehler lag jetzt aber ganz woanders. Ich war nicht in c:/programme/java sondern c:/programme (x86)/java .

Kein Wunder dass javac nicht gefunden wurde ;)

PS: Trotzdem ein Dank für deine Mühen!
 
Das JDK installiert sich immer in den 64-Bit Programmordner, bei der JRE liegt die 64-Bit JRE im 64-Bit Programmordner, die 32-Bit JRE jedoch im 32-Bit Programmordner. Deshalb hast du die "javac.exe" auch nach der Installation des JDK nur im 64-Bit Programmordner, da dort das JDK liegt.
 
@Simpson474: Warum sollte sich ein 32-Bit-JDK im 64-Bit-Programme-Ordner installieren? oO
 
Ist schon eine Zeit her, seit ich das JDK installiert habe und es war wohl doch ein 64-Bit JDK - zumindest meldet es sich mit:
Code:
java version "1.6.0_25"
Java(TM) SE Runtime Environment (build 1.6.0_25-b06)
Java HotSpot(TM) 64-Bit Server VM (build 20.0-b11, mixed mode)
 
Es gibt das JDK genau wie die JRE halt in 32- und 64-Bit-Version... im Gegensatz zu manch anderen Dingen bringt die 64-Bit-Version da auch immer nur die 64-Bit-Variante mit und keine 32-Bit...

Allgemein finde ich es bei Java nicht wirklich "gelungen" in dieser Hinsicht. Man kann zwar 32-Bit und 64-Bit-Versionen parallel installieren, aber es ist dann nicht unbedingt so, dass eine Java-Anwendung von sich aus sagen kann "hey, ich will die 32-Bit-JRE"...
 
Das Konzept finde ich bei .Net auch besser - dort kann man in der Anwendung kodieren, ob diese in 64-Bit oder ARM-Umgebungen ausgeführt werden darf oder nicht bzw. einen Fallback auf die 32-Bit Laufzeitumgebung machen soll. Außerdem ist es bei Java immer das Problem, dass man nur sehr schwer festlegen kann, ob die 64-Bit JRE oder die 32-Bit JRE als Standard verwendet werden soll.
 
hm ich bekomme nach der Eingabe des Befehles zum erstellen der vcf Datei die Frage gestellt ob Samsung böse ist und so weiter, wenn ich yes eingebe kommt die meldung output.vcf Zugriff verweigert. bei no abbruch.
Warum Zugriff verweigert? was hab ich falsch gemacht?
 
Javaprogramme sind hardwareunabhängig. Von daher laufen sie sowohl unter 32 als auch unter 64-Bit-Systemen. Ich fände es nicht gut, wenn man eine Hardwareabhängigkeit künstlich erzeugen könnte.
 
ruun77 schrieb:
weiss keiner abhilfe?
Um ehrlich zu sein, verstehe ich den Inhalt deines vorherigen Posts nicht wirklich ;)

Banthor schrieb:
Javaprogramme sind hardwareunabhängig. Von daher laufen sie sowohl unter 32 als auch unter 64-Bit-Systemen. Ich fände es nicht gut, wenn man eine Hardwareabhängigkeit künstlich erzeugen könnte.
Für normale Java-Programme mag dies zutreffen, sobald JNI verwendet wird so ist es jedoch sowohl mit der Hardwareunabhängigkeit als auch mit der Lauffähigkeit auf x64 und x86 Runtimes vorbei.
 
ich hab die anleitung vom link den Treib0r gepostet hat befolgt, bekomme dann beim Befehl das eine "komplett.vcf" datei zu erstellen die meldung "kein zugriff auf die datei"
 
Hast du die Eingabeaufforderung mit Rechtsklick und "Als Administrator ausführen" gestartet, falls du mit Windows Vista oder neuer arbeitest?
 

Ähnliche Themen

Zurück
Oben