最近、いじっていてJavaFX
、問題に遭遇しました。ソケットを使用して、自宅のリモート コンピューターから自分の音楽コレクションを聴くための簡単なアプリケーションを構築しています。サーバーはコンソール アプリケーションであり、クライアントはJFrame
ウィンドウを使用し、.mp3 を使用して再生しJavaFX
ます。
外部コンピューターでクライアント アプリケーションを使用する最も簡単な方法は、Runnable Jar
ファイルを作成することでした。アプリケーションは正常に動作しますが、1 つの点を除いては、音楽が再生されません。私がそれを機能させる唯一の方法は、単純な.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
ファイルを実行するだけでアプリケーションに音楽を再生させるにはどうすればよいですか?