The argument processing of AOT was changed with
8189941: Implementation JEP 312: Thread-local handshake
because AOT doesn't yet support it. Previously UseAOT was on by default, and aot'ed java.base.so etc in jdl/lib were seamlessly loaded and used without any extra args. After 8189941, the only way to get AOT to work is to specify the AOT library explicitly for example: -XX:AOTLibrary=./build/linux-x64/images/jdk/lib/libjava.base-coop.so
The workaround for the time being to use AOT the old way is to use -XX:-ThreadLocalHandshakes.