Which is completely amazing considering how much dynamic and reflective code there is floating around in the Java ecosystem. I've never been able to compile anything beyond a trivial app with native-image because there is always something dynamic being used somewhere. I'm really looking forward to seeing where espresso goes.
Yes but it's extremely difficult to know them before hand. Trust me I've tried. It's not a trivial thing to do. The only success I've had is with quarkus [0] and thats only if you don't go outside of what the framework provides.