use*_*009 5 java mp3 javafx illegalargumentexception javafx-2
所以我的代码只是复制粘贴:
import javafx.scene.media.*;
class Gui {
public static void main(String[] args) {
try{
Media hit = new Media("skin.mp3");
MediaPlayer mediaPlayer = new MediaPlayer(hit);
mediaPlayer.play();
}catch(Exception e){
e.printStackTrace();
}
}
}
Run Code Online (Sandbox Code Playgroud)
我得到的例外是:
java.lang.IllegalArgumentException: uri.getScheme() == null!
at com.sun.media.jfxmedia.locator.Locator.<init>(Locator.java:217)
at javafx.scene.media.Media.<init>(Media.java:364)
at Gui.main(gui.java:6)
Run Code Online (Sandbox Code Playgroud)
我正在编译和运行它,即通过jfxrt.jar在classpath中包含该文件
注意:我只是使用记事本而不是任何IDE.
所以任何人都可以告诉我原因 IllegalArgumentException
Thankx
更新:通过使用file://e:/skin.mp3它工作正常,但给我另一个例外:
MediaException: MEDIA_INACCESSIBLE : e
at javafx.scene.media.Media.<init>(Unknown Source)
at Gui.main(gui.java:6)
Run Code Online (Sandbox Code Playgroud)
所以如果你能对这个例外有所了解.
顺便说一句,我检查了这首歌,它没有腐败,因为它在vlc中播放得很好.
来自JavaFX API文档
- 提供的URI必须符合java.net.URI要求的RFC-2396.
- 仅支持HTTP,FILE和JAR URI.
因此,我怀疑从阅读文档时,您需要提供URI路径.
类似的东西file://path/to/file/skin.mp3可能会起作用.
| 归档时间: |
|
| 查看次数: |
6227 次 |
| 最近记录: |