Java Jar文件缺少文件路径

Java Jar文件缺少文件路径,java,filepath,Java,Filepath,当我的ide打开时,一切都可以正常工作,但当我构建项目时,它不能作为jar文件工作。我想问题是在我的资源路径,我找不到任何方法来处理这个问题,请帮助我,如果你有任何解决办法 public void playSound(String filename){ String strFilename = filename; try { ClassLoader classLoader = getClass().getClassLoader();

当我的ide打开时,一切都可以正常工作,但当我构建项目时,它不能作为jar文件工作。我想问题是在我的资源路径,我找不到任何方法来处理这个问题,请帮助我,如果你有任何解决办法

public void playSound(String filename){

        String strFilename = filename;

        try {
            ClassLoader classLoader = getClass().getClassLoader();
            soundFile = new File(classLoader.getResource(strFilename).getFile());
        } catch (Exception e) {
            e.printStackTrace();
            System.exit(1);
        }

不能将jar中的资源作为文件寻址。在IDE中,它可能是文件系统中的文件,而不是jar中的资源。您需要能够以URL和/或InputStream的形式读取内容。

请显示StackTrace[Ljava.lang.StackTraceeElement:@2b5a780@user3704324,这不是StackTrace。请参阅
e.printStackTrace()
line?请编辑您的问题以包含该行的输出。但是,当我构建项目时,Jar文件将.wav资源保存在其内部,那么我如何调整路径?参数“filename”必须与类路径相关(即它在Jar中的位置)。如果您使用的是标准maven项目结构,那么它将与/src/main/resources相关。代码中的classLoader.getResource部分没有问题。当您尝试将该资源转换为文件时,您遇到了问题。