我有一个项目,我想导出为jar文件.该软件应该在某个时间点播放声音.但是,问题是当达到该时间点时,JAR文件不播放声音文件.当我从Eclipse IDE运行相同的项目时,它确实如此.
以下代码显示了我如何设置声音播放功能:
public void setupSoundPlayback(){
try{
buzzer = AudioSystem.getClip();
in = AudioSystem.getAudioInputStream(BatteryBeeper.class.
getResourceAsStream("/sound/boing_x.wav"));
buzzer.open(in);
}catch(Exception e){
e.printStackTrace();
}
}
后来,我调用了Clip对象的play()方法.
虽然我使用getResourceAsStream()方法播放嵌入的声音,但JAR不播放声音.
当我被告知提取并查看声音文件是否在适当的位置时,我做到了.这就是我得到的.声音文件夹位于根目录中.并且boing3_x.wav位于声音文件夹中(不在图片中).
解决方法:
由于您正在使用调用getResourceAsStream(“/ sound / boing_x.wav”);,因此应确保.wav文件在JAR中包含在正确的位置.
由于在路径的开头有一个’/’,因此.wav文件需要使用绝对路径(即声音目录需要位于JAR的根目录中)位于您指定的路径中的JAR内部,和boing_x.wav需要位于声音目录中).
我建议将您的JAR文件解压缩到特定目录,并确保在解压缩JAR时,您会看到/sound/boing_x.wav.
标签:java,embedded-resource 来源: https://codeday.me/bug/20190825/1724284.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。