Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Current »

The Java EE jars in the javax.* groups in the Maven Central repository are the ones provided by Sun. What if you want to use another vendor's specification and implementation jars?

Unfortunately, Maven doesn't understand "is an implementation of". For example, if you declare a dependency on the MyFaces JSF implementation, and you have a transitive dependency on Sun's JSF reference implementation, you will end up with both of them on your classpath because Maven can't tell they are the same thing.

The same applies if you host an internal repository and want to use IBM's or BEA's Java EE implementations, which aren't available in the public repository.

The Servlet API jar is generally not a problem because it is almost always declared with 'provided' scope, which takes it out of transitive dependency resolution. Otherwise you might end up with one of Geronimo's Servlet 2.5 API jars, as well as Sun's servlet-api-2.5.jar on your classpath.

  • No labels