[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
[ee4j-pmc] implementation module names, groupIds, etc.
|
While you're thinking about what to do about the standard module names,
there's a similar issue with the names of implementation modules, the
Maven groupIds used for these artifacts, their OSGi bundle names, etc.
My questions to the PMC are at the bottom.
I described the conventions we used for Java EE here:
https://javaee.github.io/glassfish/wiki-archive/Maven%20Versioning%20Rules.html
Here's two examples excerpted from that:
JSF:
API jar file: javax.faces-api.jar
OSGi Bundle-SymbolicName: javax.faces-api
Maven group ID, artifact ID: javax.faces:javax.faces-api
jar Extension-Name: javax.faces
API javadoc jar file: javax.faces-api-javadoc.jar
API source jar file: javax.faces-api-sources.jar
Implementation jar file: javax.faces.jar
OSGi Bundle-SymbolicName: org.glassfish.javax.faces
Maven group ID, artifact ID: org.glassfish:javax.faces
jar Extension-Name: javax.faces
JavaMail:
API jar file: javax.mail-api.jar
OSGi Bundle-SymbolicName: javax.mail-api
Maven group ID, artifact ID: javax.mail:javax.mail-api
jar Extension-Name: javax.mail
API javadoc jar file: javax.mail-api-javadoc.jar
API source jar file: javax.mail-api-sources.jar
Implementation jar file: javax.mail.jar
OSGi Bundle-SymbolicName: com.sun.mail.javax.mail
Maven group ID, artifact ID: com.sun.mail:javax.mail
jar Extension-Name: javax.mail
What names should we use for the implementation jar files?
Eclipse now owns GlassFish, so continuing to use org.glassfish might be fine.
This would take care of many of the implementation jar files.
What about the components that have used (e.g.) com.sun.*? Should we switch
to "org.eclipse.ee4j.*" or perhaps just "ee4j.*"?
The above examples might change to:
JSF:
API jar file: jakarta.faces-api.jar
OSGi Bundle-SymbolicName: jakarta.faces-api
Maven group ID, artifact ID: jakarta.faces:jakarta.faces-api
jar Extension-Name: jakarta.faces
API javadoc jar file: jakarta.faces-api-javadoc.jar
API source jar file: jakarta.faces-api-sources.jar
Implementation jar file: jakarta.faces.jar
OSGi Bundle-SymbolicName: org.glassfish.jakarta.faces
Maven group ID, artifact ID: org.glassfish:jakarta.faces
jar Extension-Name: jakarta.faces
JavaMail:
API jar file: jakarta.mail-api.jar
OSGi Bundle-SymbolicName: jakarta.mail-api
Maven group ID, artifact ID: jakarta.mail:jakarta.mail-api
jar Extension-Name: jakarta.mail
API javadoc jar file: jakarta.mail-api-javadoc.jar
API source jar file: jakarta.mail-api-sources.jar
Implementation jar file: jakarta.mail.jar
OSGi Bundle-SymbolicName: org.eclipse.ee4j.mail.jakarta.mail
Maven group ID, artifact ID: org.eclipse.ee4j.mail:jakarta.mail
jar Extension-Name: jakarta.mail
Likewise, the Java platform module system names might be
org.glassfish.jakarta.faces and org.eclipse.ee4j.mail.jakarta.mail,
or something like that.
Note that none of this is suggesting that we change the Java package names;
doing so would have a significant hit on compatibility for applications
using the EE4J implementations. Still, these other proposed changes will
disrupt or confuse some users, and we should consider whether such changes
are "worth it".
Finally, my questions for the PMC:
1. Should we change the implementation Maven groupIds and OSGi bundle names
(and choose corresponding Java platform module system names)?
2. If so, what new naming convention should we use?
3. Should we continue to use org.glassfish, or change it as well?
Thanks.