我希望加载位于以下位置的html文件:

在独立的spring boot jar应用程序中使用。
这种方法导致了FileSystemNotFoundException
new InputStreamReader(
getClass().getResourceAsStream("/email-templates/html-email.html")
)使用
@Autowired
private ResourceLoader resourceLoader;
...
resourceLoader.getResource("classpath:email-templates/html-email.html");通向NullPointerException。
请指定如何正确地加载spring启动jar中的文件。
发布于 2017-10-15 00:05:20
试试下面的代码。使用spring类类资源,您应该能够加载它们。只要您尝试在spring上下文中加载这个文件,Spring容器就知道它的类路径.So --它应该加载相应的file.Otherwise,它试图在文件系统中找到它。
Resource resource = new ClassPathResource("email-templates/html-email.html");我假设您的jar中有这些资源,如果有这些资源,请在jar文件中检查。
jar tf springboot.jar发布于 2017-10-14 22:19:38
在jar文件中加载资源Java
试着通过下面的代码。
ClassLoader classloader = Thread.currentThread().getContextClassLoader();
InputStream is = classloader.getResourceAsStream("email-templates/html-email.html");/email-templates/html-email.html
如果上面的内容不起作用,请访问此帮助全链接Java ClassLoaderUtil
https://stackoverflow.com/questions/46749808
复制相似问题