because it happened inside debugger evaluation
问题调试代码的时候,发现有些变量赋值的代码没有进断点,就莫名其妙就被赋值了。此时schemaMappingsLocation和schemaMappings的值都为null,按下F8schemaMappingsLocation被赋值是正常的,schemaMappings的值怎么也有了???同时idea左下角有一个如下图的提示2. 排查发现schemaMappings在PluggableSc...
·
- 问题
调试代码的时候,发现有些变量赋值的代码没有进断点,就莫名其妙就被赋值了。
此时schemaMappingsLocation和schemaMappings的值都为null,按下F8
schemaMappingsLocation被赋值是正常的,schemaMappings的值怎么也有了???
同时idea左下角有一个如下图的提示
2. 排查
上面是调试的PluggableSchemaResolver类的构造方法,当构造方法执行完成,IDEA会默认调用该类的toString()方法。的确发现schemaMappings在PluggableSchemaResolver类的toString()被使用!
public String toString() {
// getSchemaMappings()中初始化了schemaMappings
return "EntityResolver using mappings " + getSchemaMappings();
}
3.解决
在设置中关掉自动执行toString()方法即可。
更多推荐




所有评论(0)