最近我一直在玩弄JavaFX
,我遇到了一个问题。我一直在构建一个简单的应用程序,以使用套接字从远程计算机在家中收听我的音乐收藏。服务器是一个控制台应用程序,客户端使用一个JFrame
窗口并使用JavaFX
.
对我来说,在外部计算机上使用客户端应用程序的最简单方法是创建一个Runnable Jar
文件。该应用程序运行良好,除了一件事:它不会播放音乐。我让它工作的唯一方法是使用一个简单的 .batch 文件启动它:
java -jar Test.jar
pause
我的示例应用程序的代码如下:(问题与这个简单示例相同,所以我认为问题出在 Runnable Jar 文件而不是我的实际应用程序)。
import java.io.File;
import javafx.embed.swing.JFXPanel;
import javafx.scene.media.Media;
import javafx.scene.media.MediaPlayer;
public class SimpleAudioPlayer {
public SimpleAudioPlayer(){
//Initialize JFXPanel to initialize JavaFX toolkit (workaround)
JFXPanel jfx = new JFXPanel();
Media mediaFile = new Media(new File("music/Song.mp3")
.toURI().toString());
MediaPlayer mp = new MediaPlayer(mediaFile);
mp.play();
}
public static void main(String[] args) {
new SimpleAudioPlayer();
}
}
如何通过简单地执行Runnable jar
文件来让应用程序播放音乐?