Alpine Linux, a security-focused lightweight distribution of the platform, may get its own Java port. Alpine is popular with the Docker container developers, so a Java port could pave the way to making Java containers very small.
A proposal floated this week on an OpenJDK mailing list calls for porting the JDK (Java Development Kit), including the Java Runtime Environment, Java compiler and APIs, to both the distribution and the musl C standard library, which is supported by Alpine Linux. The key focus here is musl; Java has previously been ported to the standard glibc library, which you can install in Alpine, but the standard Alpine release switched two years ago to musl because it’s much faster and more compact
The Portola porting effort would be led by Mikael Vidstedt, a JDK 9 committer at Oracle. The proposal is still in its early stages of discussion, and the proposal has sparked questions. One member of the mailing list questioned the scope of the port, asking whether it would be handled as a new OS or a Linux version. He also questioned which architectures would be supported.
Vidstedt responded that project members would discuss how exactly to model the Alpine/musl port. But his preliminary investigation on Linux/64 did not uncover anything inherently specific to the CPU architecture, “so until proven otherwise I would assume that the musl-supported platforms is the limiting factor,” he said.
Although the next version of Java, due this summer, is JDK 9, the initial source of the Portola project would be based on a clone of a JDK 10 repository. As with the Project Lamdba and Project Valhalla Java efforts, proponents would follow a “commit first, review later” policy, with code not flowing directly from Portola repositories into JDK repositories. A curated merge would be done instead, with select changes extracted into new changesets for inclusion in JDK repositories when ready.