Kompilieren und Ausführen mit JavaFX 2.1

Ich versuche eine sehr einfache Verwendung von JavaFX mit einem einfachen Satz von Codezeilen, die ich von einer anderen Stackoverflow-Seite erhalten habe (Hier). Das Problem liegt jedoch eindeutig nicht in diesem Code, sondern in etwas Grundlegenderem im Build-and-Run-Prozess.

Hier ist mein Code:

import javafx.scene.media.Media;
import javafx.scene.media.MediaPlayer;
.
.
.
Media medMsg = new Media("msg.mp3");
MediaPlayer medplMsg = new MediaPlayer(medMsg);
medplMsg.play();

Zuerst konnte ich das überhaupt nicht kompilieren. Schließlich stellte ich fest, dass ich -classpath c: \ Programme \ Oracle \ JavaFX 2.1 SDK \ lib \ rt \ jfxrt.jar in meine Java-Befehlszeile schreiben musste. (Ein offensichtlicher Komplex von Fragen ist hier: Warum ist nicht an irgendeiner offensichtlichen Stelle dokumentiert (1), dass dies erforderlich ist und (2) wie genau der Pfad zur JavaFX-Installation ermittelt werden kann ?!)

Aber wenn ich den Code ausführe, erhalte ich:

Exception in thread "main" java.lang.NoClassDefFoundError: javafx/scene/media/Media

    at progtest.main(progtest.java:120)
Caused by: java.lang.ClassNotFoundException: javafx.scene.media.Media
    at java.net.URLClassLoader$1.run(Unknown Source)
    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)
    ... 1 more

Was bedeutet das? Es sieht so aus, als ob es zur Laufzeit nicht weiß, wie die Klasse javafx.scene.media.Media zu finden ist. Aber meine Variable% CLASSPATH% enthält definitiv "c: \ Programme \ Oracle \ JavaFX 2.1 SDK \ lib \ rt \ jfxrt.jar".

Irgendwelche Ideen? Danke im Voraus!

Antworten auf die Frage(2)

Ihre Antwort auf die Frage