Why does ES need Java 14 to build?

I suppose your question might be more about why we use a non-LTS release (JDK14) rather than the latest LTS release (JDK11) for the build environment. I don't think there's a good reason to stick only to LTS releases, builds are effectively one-shot executions so there's no need for long-term support. Also the gaps between LTS releases are enormous, and big-jump upgrades are always a lot more painful than smaller ones, so the release cadence of non-LTS releases is preferable.