java - getClass().getClassLoader().getResource(path) 始终返回 null,即使路径正确

标签 java

我使用 Java 项目来执行此操作,而不是动态 Web 项目,我只是将我的 .wav 文件直接放置到项目中(在项目名称上右键单击 n 粘贴)。

我尝试阅读很多帖子,但没有用。帮我解决这个问题。我尝试阅读很多帖子但没有用。

try{
      // Open an audio input stream.
      URL url = this.getClass().getClassLoader().getResource("Rain.wav");
      System.out.println("url:"+url);
      AudioInputStream audioIn = AudioSystem.getAudioInputStream(url);
      // Get a sound clip resource.
      Clip clip = AudioSystem.getClip();
      clip.open(audioIn);
      clip.start();
      /* clip.loop(Clip.LOOP_CONTINUOUSLY);  */
 } catch (UnsupportedAudioFileException e) {
      e.printStackTrace();
 }

最佳答案

getClass().getClassLoader().getResource(path) always return null, even when the path is correct

不,没有。

I just placed my .wav file to directly project

正是如此。那是错误的地方。你的路径不正确。您的 Rain.wav 文件需要按照您查找的方式位于 JAR 文件的根目录中。该项目的根源与此完全无关。

关于java - getClass().getClassLoader().getResource(path) 始终返回 null,即使路径正确,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22471353/

相关文章:

java - Hibernate 多对多自映射通过 .get() 读取

java - 创建一个正则表达式来解析文件 - Java

java - 什么时候 finally block 在 try 或 catch block 被中断时不执行

java - JTextArea画Java?

java - android.util.Base64 编码/解码标志参数

java - undertow 网络服务器未绑定(bind)到远程地址

java - 如何更改 JAX-WS 中的响应 xml

java - 如何用两个循环实现一个条件

java - 如何在 Java/Scala 中创建 PDF/DOCX 文件?

java - Calendar.getInstance().getTime() 是否会给我与 new Date() 不同的答案?