我有一个Web应用程序,它使用驻留在TOMCAT_HOME/common/lib中的库。这个库查找一个特性在classpath的根目录文件(在一个名为ApplicationConfig类):getResourceAsStream不加载webapp中的资源
ApplicationConfig.class.getResourceAsStream("/hv-application.properties");
我的Tomcat Web应用程序包含此属性文件。它在WEB-INF/classes中,这是类路径的根?然而,在运行时,当它试图加载属性文件时,它会抛出一个异常,因为它找不到它(getResourceAsStream返回null)。
如果我的应用程序是一个简单的独立Java应用程序,一切正常。 Tomcat是否会导致getResourceAsStream方法的行为不同?我知道那里有很多类似的问题,但不幸的是他们都没有帮助。谢谢。
谢谢binil。这是有效的,但我宁愿不必对库进行任何更改。如果找不到其他解决方案,将标记为答案。 – Michael 2010-04-16 14:49:13
奇怪的是,在Tomcat 5.5下使用Win XP和JDK 1.5.08,我能够在不使用前导“/”的情况下加载资源文件。实际上,当预先加入“/”时,我遇到了问题。 – Olivier 2011-01-03 22:52:15