我一直得到java.lang.illigalthreadexception?

我一直得到java.lang.illigalthreadexception?,java,exception,audio,error-handling,Java,Exception,Audio,Error Handling,我想创造一个简单的音频播放器,但我一直得到例外,有人能解释为什么吗 import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.io.InputStream; import javax.swing.JOptionPane; import sun.audio.AudioPlayer; import

我想创造一个简单的音频播放器,但我一直得到例外,有人能解释为什么吗

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import javax.swing.JOptionPane;
import sun.audio.AudioPlayer;
import sun.audio.AudioStream;

public class Audioo {
  public static void main (String str[]) throws IOException
  {
    try {
      InputStream im;
      im = new FileInputStream (new File ("name"));
      AudioStream audios = new AudioStream (im);
      AudioPlayer.player.start(); 
    } catch (Exception e) {                                          
      JOptionPane.showMessageDialog(null, e); 
    } 
  }      
}

很可能
sun.audio.AudioPlayer
不支持您试图播放的文件的音频格式


我用你的代码修复了
start()
start(audios)
,将文件名更改为我下载的示例wav文件的完整路径,它对我有效。

你需要显示更多代码-
AudioPlayer
类会有帮助。请发布完整的堆栈跟踪。我猜你的意思是
非法线程状态异常
?@Zyn-
sun.audio.AudioPlayer
。似乎是从
sun.*
软件包导入的。在我在网上看到的示例中,您需要将
audios
变量作为参数传递给
start()
方法。此代码似乎根本不存在,这是您真正的代码吗?例如
AudioPlayer.player.start()最有可能是
AudioPlayer.player.start(audios)