java.specification.version for java 10 is "10"
MessageBuffer is expecting a '.' and will then not use unsafe even if available
I suspect the same is true for 9 and 11.
a workaround is to override the property on the command line
-Djava.specification.version=1.10