因此,當您閱讀時,我正在嘗試在我正在撰寫的 JavaFX 程式的主選單上獲得一些聲音。我已將要播放的 mp3 放在專案包中的 res 檔案夾中的 sound 檔案夾中。然而,當我稱它為類似于我為視窗呼叫影像的方式時,我收到了 IllegalArgumentException 錯誤。
Media menuMusic = new Media("sounds/menu_music.mp3");
menuPlayer = new MediaPlayer(menuMusic);
menuPlayer.setAutoPlay(true);
menuPlayer.setVolume(0.8);
這是檔案在專案中存盤位置的照片的鏈接。
我得到的錯誤:
Caused by: java.lang.IllegalArgumentException: uri.getScheme() == null! uri == 'sounds/menu_music.mp3'
如果有人可以幫助我,將不勝感激。我從來沒有在 JavaFX 中使用過媒體,所以據我所知,我可能完全錯了,謝謝!
uj5u.com熱心網友回復:
menuPlayer = new Media(Paths.get("sounds/menu_music.mp3").toUri().toString());
“ java.lang.IllegalArgumentException: uri.getScheme() == null! ” 使用 JavaFX 播放音頻時出錯
編輯:正如@James_D 指出的那樣。如果您嘗試將其編譯為 jar,上述代碼將失敗。從資源加載檔案的正確原因如下。
menuPlayer = new Media(getClass().getResource("/sounds/menu_music.mp3").toExternalForm());
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/345318.html
