Jar 中不可用的打包资产

Packaged assets not available in Jar

我的捆绑包看起来像 this and I call the resources like this。当来自 Eclipse 运行 时一切正常,尽管当导出为 运行nable Jar 时。该程序似乎无法引用资源
问题
为什么打包后我的资产无法访问?

File 不适用于 jars,因为文件系统未设置为查看 jars。如果您使用 URL 来寻址您的资源,您应该没问题。

编辑:添加示例。

假设您链接的地址短语是正确的(因为代码在 Eclipse 中工作,这似乎很可能),下面应该让您工作 URL。

URL url = MapLoader.class.getResource("assets/xml/maps.xml");

接下来的操作取决于 class 以及将其用作参数的方法。如果您在 class & 方法的 API 中检查您使用 File 作为参数的方法,很可能会有一个使用 URL 的类似方法。