0

好吧,我对这个问题感到很困惑。我正在尝试运行一些似乎适用于一个人但不适用于其他两个人的专有软件。该软件抛出此异常:

线程“AWT-EventQueue-1”java.lang.IllegalArgumentException 中的异常:org.classpath.icedtea.pulseaudio.Stream.(Stream.java: 263) 在 org.classpath.icedtea.pulseaudio.PulseAudioDataLine.open(PulseAudioDataLine.java:100) 在 org.classpath.icedtea.pulseaudio.PulseAudioSourceDataLine 的 org.classpath.icedtea.pulseaudio.PulseAudioDataLine.createStream(PulseAudioDataLine.java:132) .open(PulseAudioSourceDataLine.java:75) 在 org.classpath.icedtea.pulseaudio.PulseAudioSourceDataLine.open(PulseAudioSourceDataLine.java:90)

但是,据我所知,我正在运行 Sun Java Hotspot。我在 Ubuntu 10.10 上,我知道它使用脉冲音频作为其默认音频设备,但是当我尝试切换到 ALSA 时,我遇到了同样的异常。由于此代码在另一台计算机上正确运行,我假设我遇到了配置问题,而不是错误代码。

可能出了什么问题,我该如何解决?

4

1 回答 1

1

位于 java 和 pulseaudio 之间的 pulse-java jni 层确实包含一些已在 2011 年夏天修复的并发问题。并发错误通常表现为竞争条件,仅在某些机器上触发并且通常难以调试。请将您的发行版更新到 Ubuntu 11.10 Oneiric 或找到可以为 Maverick 10.10 重新编译(反向移植)openjdk-6 (6b23~pre10-0ubuntu4) 的人,此 OpenJDK 版本已被修补以修复所有已知的 pulse-java jni 错误。

于 2011-10-03T12:43:16.637 回答