For those who know jaotc, I have a simple question for you.
After you do
javac HelloWorld.java
jaotc --output HelloWorld.so HelloWorld.class
You can run
java -XX:AOTLibrary=./HelloWorld.so HelloWorld
without any problem. This is what has been shown on the internet everywhere. Fine with me.
However, if you move your HelloWorld.class somewhere else that is not in your classpath, and run
java -XX:AOTLibrary=./HelloWorld.so HelloWorld
again, then you will get a class not found error.
So the original .class file is still needed? Then what's the point of doing the AOT?
Yes, at least so far. You may refer to http://openjdk.java.net/jeps/295 :