SnakeYaml 保持 IOException: Stream 关闭
SnakeYaml keep IOException: Stream closed
当我尝试 运行 来自 this 网站的代码时,无论我如何尝试解决它,我总是遇到同样的错误。我试过:
- 检查名称是否正确且存在(不知道是不是路径问题,我是直接引用输入流中的文件(“example.txt”)并且文件在同一个包中java 文件。
- 正在更新库
- 将文件名直接放在yaml.load中,这只会引发另一个异常(class java.lang.String无法转换为class java.util.Map(java.lang.String 和 java.util.Map 在加载程序 'bootstrap'))
的模块 java.base 中
- 正在创建一个新的 java 项目,同样的错误。
- 上网找解决方法。
private void editConfig(String id) {
Yaml yaml = new Yaml();
InputStream inputStream = this.getClass()
.getClassLoader()
.getResourceAsStream("config.yml");
Map<String, Object> obj = yaml.load(inputStream);
System.out.println(obj);
}
我找到了答案;
因为 yaml 文件和我的 class 在同一个包里,我应该去掉 .getClassLoader.
当我尝试 运行 来自 this 网站的代码时,无论我如何尝试解决它,我总是遇到同样的错误。我试过:
- 检查名称是否正确且存在(不知道是不是路径问题,我是直接引用输入流中的文件(“example.txt”)并且文件在同一个包中java 文件。
- 正在更新库
- 将文件名直接放在yaml.load中,这只会引发另一个异常(class java.lang.String无法转换为class java.util.Map(java.lang.String 和 java.util.Map 在加载程序 'bootstrap')) 的模块 java.base 中
- 正在创建一个新的 java 项目,同样的错误。
- 上网找解决方法。
private void editConfig(String id) {
Yaml yaml = new Yaml();
InputStream inputStream = this.getClass()
.getClassLoader()
.getResourceAsStream("config.yml");
Map<String, Object> obj = yaml.load(inputStream);
System.out.println(obj);
}
我找到了答案;
因为 yaml 文件和我的 class 在同一个包里,我应该去掉 .getClassLoader.