我通过打印 JVM 参数检查了 JVM 上的默认 MaxMetaspaceSize,如下所示
java -XX:+PrintFlagsFinal -version | grep MaxMetaspaceSize
uintx MaxMetaspaceSize = 18446744073709547520 {product}
java version "1.8.0_152"
Java(TM) SE Runtime Environment (build 1.8.0_152-b16)
Java HotSpot(TM) 64-Bit Server VM (build 25.152-b16, mixed mode)
鉴于这些 JVM 参数值以字节为单位显示,默认的 MaxMetaspaceSize 约为 18 Exabytes!
有人可以解释为什么默认的 MaxMetaspaceSize 值这么大吗?