Компиляция и запуск с JavaFX 2.1

Я пытаюсь очень просто использовать JavaFX, используя простой набор строк кода, который я получил с другой страницы stackoverflow (здесь. Но проблема явно не в этом коде, а в чем-то более фундаментальном в процессе сборки и запуска.

Вот мой код:

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

Сначала я вообще не мог его скомпилировать. В конце концов я понял, что мне нужно поместить -classpath c:\Program Files\Oracle\JavaFX 2.1 SDK\lib\rt\jfxrt.jar в мою командную строку javac. (Здесь один очевидный комплекс вопросов: почему нигде не задокументировано (1) что это нужно и (2) как именно выяснить, какой путь к установке JavaFX?!)

Но , когда я запускаю код, я получаю:

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

Что это значит? Похоже, во время выполнения он не знает, как найти класс javafx.scene.media.Media. Но в моей переменной% CLASSPATH% определенно есть «c:\Program Files\Oracle\JavaFX 2.1 SDK\lib\rt\jfxrt.jar».

Есть идеи? Заранее спасибо!

12
задан Community 23 May 2017 в 11:53
поделиться