如何获取jar中的目录?
假设我有一个名为 foo.jar 的 jar,我怎样才能使 jar 能够访问这样的文件foo.jar!/text.txt
,而类是这样的foo.jar!/randomPackage/Main.class
?
我仍然可以在 Eclipse 中执行此操作,但是当我将程序导出到 jar 中时,它就不起作用了。
如何获取jar中的目录?
假设我有一个名为 foo.jar 的 jar,我怎样才能使 jar 能够访问这样的文件foo.jar!/text.txt
,而类是这样的foo.jar!/randomPackage/Main.class
?
我仍然可以在 Eclipse 中执行此操作,但是当我将程序导出到 jar 中时,它就不起作用了。
您需要使用,例如,java.lang.Class.getResourceAsStream()
访问该文件。这将在 jar 内或文件系统上工作。
您有 2 个主要选项。
this.getClass().getClassLoader().getResourceAsStream("some/pkg/resource.properties");
this.getClass().getResourceAsStream.("/some/pkg/resource.properties");
我最近刚刚发布了这篇更完整的帖子,getResourceAsStream 返回 null