有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

尝试播放音频文件时出现java JLayer异常

我一直在测试一个可以在PC和Android平台上运行的Java库,几天前这里有人告诉我使用JLayer。今天我很高兴地编写代码,然后出现了一个异常:

java.lang.ExceptionInInitializerError
at javazoom.jl.decoder.SynthesisFilter.load_d(Unknown Source)
at javazoom.jl.decoder.SynthesisFilter.<init>(Unknown Source)
at javazoom.jl.decoder.Decoder.initialize(Unknown Source)
at javazoom.jl.decoder.Decoder.decodeFrame(Unknown Source)
at javazoom.jl.player.Player.decodeFrame(Unknown Source)
at javazoom.jl.player.Player.play(Unknown Source)
at javazoom.jl.player.Player.play(Unknown Source)
at Main.Play(Main.java:23)
at Main.main(Main.java:164)
Caused by: java.io.IOException: unable to load resource 'sfd.ser'
at javazoom.jl.decoder.JavaLayerUtils.deserializeArrayResource(Unknown Source)
... 9 more

我试图用谷歌搜索这个异常的原因,但没有结果,所以我来这里请求你的帮助

这是我尝试播放音频文件的函数:

public static void Play()
{
    try
    {
        InputStream fis = new FileInputStream("L://POO//MyWS//WakeUp!//Back in black.mp3");
        Player p = new Player(fis);

        p.play();

    }
    catch(FileNotFoundException e)
    {
        e.printStackTrace();
    }
    catch (JavaLayerException e)
    {
        e.printStackTrace();
    }
    catch (Exception e)
    {
        e.printStackTrace();
    }
    catch(ExceptionInInitializerError e)
    {
        e.printStackTrace();
    }
}

提前谢谢你!:D


共 (2) 个答案

  1. # 1 楼答案

    最后,我使用了JLayer 1.0,它就像一个符咒,你可以从here获得它。这是我找到的一个样本代码here

    编辑:在Eclipse中,如果错误不断出现,请将您的工作区更改为新的工作区

  2. # 2 楼答案

    JLayer的版本对我来说并不重要

    在我的例子中,导入javazoom。jl。游戏者光有球员是不够的。在将应用程序构建到jar中时,我确实包含了jl1。0.1.jar,但我还必须确保在构建文件的fileset dir中包含javazoom