2017-05-27 77 views
0

我在Tomcat 8上部署了一个Java项目。我没有使用任何框架。Java,Tomcat - 您可以在运行时从WEB-INF/lib目录加载资源吗?

如果在运行时,我跑是这样的:

this.getClass().getClassLoader().getResourceAsStream("xyz"); 

这个作品,如果 “XYZ” 是位于WEB-INF/classes目录中的文件;然而,如果文件“xyz”位于WEB-INF/lib目录中,上面这一行返回'null'。

有没有什么办法让我在运行时使用'ClassLoader'类的'getResourceAsStream()'方法读取WEB-INF/lib目录中的文件?

+1

答案是否定的。 WEB-INF/lib不在类路径中。它应该包含jar文件,这些文件位于classpath中。你为什么不把这个文件放在WEB-INF/classes下? –

+0

事情你不能从lib文件夹访问文件,把你的文件放在其他位置。 备用解决方案是你必须输出绝对路径的文件。 –

+0

谢谢你的答案。我只是确定。 (现在我更了解Tomcat的工作方式。) –

回答

0

正如我从评论中了解到的,答案是Classloader.getResourceAsStream()无法从Tomcat的WEB-INF/lib文件夹读取。

相关问题