加载jar外的资源文件
Load resource file outside jar
我创建了一个包含 class 的 jar,它从我的 Web 应用程序的 class 路径加载外部资源文件。我的应用程序 运行ning 在树脂服务器上。我已经在 web-inf/lib 中部署了我的 jar,我的资源文件在 web-inf/classes 文件夹中。现在正在使用
访问资源文件
getClass().getResourceAsStream("/resource-name.json");
但是,当我 运行 应用程序抛出一个空指针异常。谁能向我解释为什么我的 class 加载程序无法找到位于 web-inf/classes 文件夹中的资源文件?我搜索了这个论坛,但在这里没有找到类似我的问题。
一如既往,感谢您的回复。
要进行调查,首先尝试打印您的 ClassLoader
尝试加载 classes/resources:
的所有位置
((URLClassLoader) getClass().getClassLoader()).getURLs();
假设 Resign 的 ClassLoader
延长 URLClassLoader
。它应该包含您的文件夹。
我创建了一个包含 class 的 jar,它从我的 Web 应用程序的 class 路径加载外部资源文件。我的应用程序 运行ning 在树脂服务器上。我已经在 web-inf/lib 中部署了我的 jar,我的资源文件在 web-inf/classes 文件夹中。现在正在使用
访问资源文件getClass().getResourceAsStream("/resource-name.json");
但是,当我 运行 应用程序抛出一个空指针异常。谁能向我解释为什么我的 class 加载程序无法找到位于 web-inf/classes 文件夹中的资源文件?我搜索了这个论坛,但在这里没有找到类似我的问题。
一如既往,感谢您的回复。
要进行调查,首先尝试打印您的 ClassLoader
尝试加载 classes/resources:
((URLClassLoader) getClass().getClassLoader()).getURLs();
假设 Resign 的 ClassLoader
延长 URLClassLoader
。它应该包含您的文件夹。