The high-level HTTP client will become the official way for Java applications to communicate with Elasticsearch, replacing the Transport Client, which will be removed in Elasticsearch 7.0.
So, the only solutions:
Convince the ES team to keep the low-level client
Switch to the high-level client (if it is guaranteed to work with ES 2.x too). This will require some contributions, since right now it doesn't provide access to all the APIs we're interested in (can't access the Health or CreateIndex APIs, for instance)
Write our own low-level client. It's not as much work as one could think, since most of the code is actually in the Apache HTTP client (the low-level ES client is mostly glue between Search and the Apache HTTP client).
I misunderstood the announce: the client being retired in ES 7 is the "Transport client", which doesn't mean the low-level client, but the other high-level client, which supposedly uses some module named "Transport module": https://www.elastic.co/guide/en/elasticsearch/client/java-api/5.6/transport-client.html