Java 从运行的jar中提取文件夹

Java 从运行的jar中提取文件夹,java,intellij-idea,jar,extraction,Java,Intellij Idea,Jar,Extraction,如何从正在运行的jar中提取文件夹?由于某种原因,使用new JarFile(getClass().getProtectionDomain().getCodeSource().getLocation().Tori().getPath())会引发FileNotFoundException,访问被拒绝,只有当我从IDE运行它时(我使用IntelliJ IDEA) 有人知道解决或修复此问题的其他方法吗?您不能,因为没有文件夹。jar文件是一个zip文件,而zip文件只包含一些条目,每个条目都有一个类似

如何从正在运行的jar中提取文件夹?由于某种原因,使用
new JarFile(getClass().getProtectionDomain().getCodeSource().getLocation().Tori().getPath())
会引发
FileNotFoundException
,访问被拒绝,只有当我从IDE运行它时(我使用IntelliJ IDEA)


有人知道解决或修复此问题的其他方法吗?

您不能,因为没有文件夹。jar文件是一个zip文件,而zip文件只包含一些条目,每个条目都有一个类似路径的名称。您唯一能做的就是查找带有特定前缀的条目。更好的方法是在.jar中放置一个文本文件,其中列出了所有要提取的文件。毕竟,你是建造它的人,所以你知道你在里面放了什么。我真的不喜欢这种方式,但如果它是唯一一个,我会遵循它。唯一的方法是什么?唯一的其他方法是。这应该允许您使用或复制“目录”