Nowadays with modules and linked runtimes, deprecated APIs are indeed removed.
Plenty of Java 4 code won't run in Java 17, if it happens to use any of those.
It doesn't change the fact that Java 4 using those features won't run anylonger without additional effort.
Another are that has occasionally had breaking changes were JDBC drivers and related interfaces.
Java folks try to minimize breaking changes, yet each release has a section about breaking changes for a reason, throughout Java's history.
I don't know about these "Java Folks" but no one is claiming that Java is a magic unicorn. But it is a well designed language that has excellent backwards compatibility.
https://stackoverflow.com/questions/4065401/using-internal-s...
One risk of using libraries (or working with other people) is that you don't know if they limited them selves to good enough practices. Most do, a small percentage doesn't, but they cause pain for all of us.