Java 读取 classpath 下的配置文件关闭输入流直接用 InputStream.close()可以,但将这行代码封装到工具类中报错:
Caused by: java.lang.ClassNotFoundException: javax.servlet.ServletInputStream
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
请问这是问什么?代码如下:
InputStream inStream = classLoader.getResourceAsStream(location);
props.load(inStream);
// inStream.close(); // 使用这行代码可以
StreamUtils.closeInputSteam(inStream);
abstract public class StreamUtils {
public static void closeInputSteam(InputStream inputStream) {
if (null != inputStream) {
try {
inputStream.close();
} catch (IOException e) {
}
}
}
}
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于