Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ


Choose your language

InfoQ Homepage News Java EE Specifications Renamed Jakarta EE

Java EE Specifications Renamed Jakarta EE

This item in japanese

Lire ce contenu en français

The Eclipse Foundation recently re-named each specification of the Java EE standard to its new home in Jakarta EE, to consolidate and clarify the role of each document in the future of the platform.

The new name, Jakarta EE, is the second major re-branding of Java EE. In May of 2006, the term "J2EE" was deprecated and the name Java EE was selected. The number 2 has not appeared in the name since YouTube was an independent company and Pluto was still considered a planet. Similarly, the number 2 was removed from J2SE as part of Java SE 5 (2004), back when Google was still a private company.

Following the disagreement of re-using the javax namespace, the new name of Jakarta EE provides a very visible cut-line for what an application is:

  • Jakarta EE refer to version 9 (2019) and above, using a jakarta namespace.
  • Java EE refers to Java EE 5 (2006) through Java EE 8 (2017), using a javax namespace.
  • J2EE refers to Java EE 4 and below, using a javax namespace.

Wayne Beaton, marketing manager for the Eclipse Foundation, has clarified the way in which the specifications themselves are being renamed. Beyond replacing the word "Java" with "Jakarta," the renaming brings consistency and clarity to each specification name. For example, an API specification does not need the redundant word "API" in its name.

The specification renaming does not yet standardize the package name for dependencies. For example the newly renamed specification Jakarta Mail (formerly Java Mail) uses groupID com.sun.mail with artifactId jakarta.mail, whereas Jakarta RESTful Web Services (formerly JAX-RS) uses the groupId and artifactId

The clarity comes at a time when many developers are seeing an a-la-carte future of mixing and matching frameworks. Certain frameworks, such as MicroProfile, use and are used by other parts of Jakarta EE. John Clingan has clarified the difference between the two in a post, MicroProfile is not equals to Jakarta EE. Other frameworks, such as Quarkus, are being combined with Jakarta EE to create a hybrid approach where developers select the most appropriate tools for the problem their code is solving.

The official renaming project may go unnoticed by many developers who simply utilize the libraries in applications at a code level. For those cases and porting older applications, developers may want to focus on simply using an application server or servlet container that understands Jakarta EE, and ensuring that their dependencies utilize the newer group and artifact IDs for each project.

Rate this Article