As you say, it is important to make the distinction between gzip
the tool and gzip
the file format.
The former did not support files larger than 4GB until verison 1.2.4.
The latter is specified in RFC 1952 and has no inherent 4GB limitation.
Java's implementation of RFC 1952 doesn't appear to have any 4GB limitation either. I routinely read large files using GZIPInputStream
(Java 1.6/1.7), and have never had problems.