JBoss JavaEE Specs APIs


JBoss JavaEE Specs API

This project provides dependency management for a complete set of required APIs as defined by the Java EE Platform Specifications.

This project, which originated from the legacy jbossas/projects/specs SVN repository, was enhanced to produce an aggregation of the APIs required by the Java EE Platform Specification. Further changes included migration to a github/jboss repository. The goals initiating this move and restructure were:

  • Maintain a single repository containing the required APIs as defined by the EE Platform Specification
  • Having a consistent structure for all the EE APIs make it easier to access, maintain, and consume.
  • Individual release cycle per technology component
  • Restructuring the project so each API set can be released individually provides greater flexibility and control to the project owners without waiting for the aggregate to be released and integrated. These API releases can be consumed by your project as a single dependency or as a fully defined set of required APIs for the profile.
  • Define a naming scheme to associate the Specification version to the the APIs contained in the JAR and distinguish between that and the release version of the artifact
  • The naming scheme adopted is as follows:
    • groupId: org.jboss.spec + the package name
    • artifactId: Technology-api_SpecVersion_spec
    • version: release version of the artifact
  • Promote adoption of these spec-versioned APIs in all JBoss projects
  • The APIs released from the org.jboss.specs project are certified for compliance to their respective specification.

Java EE Full Profile APIs

If you require the full set of required technology APIs defined by the Java EE specification, add the following to your project pom.
  • <groupId>org.jboss.spec</groupId>
  • <artifactId>jboss-javaee-7.0</artifactId>
  • <version>1.0.0.Final</version>

Java EE Web Profile APIs

If you are developing web applications and depend only on technologies that comprise the Java EE Web Profile specification, you can opt to use the web profile pom.
  • <groupId>org.jboss.spec</groupId>
  • <artifactId>jboss-javaee-web-7.0</artifactId>
  • <version>1.1.0.Final</version>

Java EE API UberJar

Else, if you prefer a jar containing the EE API classes, that is also made available per a previous feature request.
  • <groupId>org.jboss.spec</groupId>
  • <artifactId>jboss-javaee-7.0-all</artifactId>
  • <version>1.1.0.Final</version>

These examples show the group:artifactId for use with Java EE 7. Releases are available for Java EE 6 also.