A while ago, I raised an issue over in the bugdatabase:
Since I don't have an account there, I couldn't reply to the comments.
In the meantime, I already yanked the code related to macOS integration from my app because having those special menu items simply isn't justifying the compatibility issues.
Bugs in some other software:
does not work at all.
com.apple.eawtclasses changed in an incompatible way.
I definitely need to build my code with Java 8 so I can't really use the replacements offered in
java.awt.desktop package, either.
So I see no other way than removing the code if I want to have an application that runs with both Java 8 and Java 9.
I understand that Java desktop applications don't have a very high priority and that macOS desktop applications will naturally have an even lower priority.
This is merely my final try to point this issue out before Java 9 hits the end-users this summer.
you can build your code with Java SE 8 and still have a JDK 9-specific variant of the same code using new functionality in JDK 9 in a single artifact through Multi-Release JAR files. Please see JEP 238: Multi-Release JAR Files for details.
Principal Product Manager
Java Platform Group @ Oracle