关于升级java24, 25后无法读档的问题,与解决方法
0.98本体自带的java版本是17,我在升级到java24和最新的java25后,会出现无法读取存档的错误。检查出错日志里,是一个xml解析错误:javax.xml.stream.XMLStreamException: ParseError at : Message: JAXP00010006: The element "e" has a depth of "101" that exceeds the limit "100" set by "jdk.xml.maxElementDepth".曾经困惑了我很久,但在最近问了ai后,才知道java24里,oracle为了解决一个内存攻击问题,把几个xml解析相关的数字都减小了很多。
解决方法是:在vmparams里,添加:
-Djdk.xml.entityExpansionLimit=64000 -Djdk.xml.entityReplacementLimit=3000000 -Djdk.xml.totalEntitySizeLimit=50000000 -Djdk.xml.maxGeneralEntitySizeLimit=0 -Djdk.xml.maxElementDepth=0
这样就可以恢复到java17的限制,正常读档。 098用 java 24是hyw。 要么用原版的java 17 要么用 java 26. 你用个不适配098的优化包干啥 “java 24是hyw”什么意思?
java24不是LTS,17,21,25是LTS,长期用的肯定用这些版本。
我是解决了The element "e" has a depth of "101" that exceeds the limit "100" set by "jdk.xml.maxElementDepth". 的报错,不涉及其他优化
页:
[1]