[
https://issues.jboss.org/browse/WFLY-7266?page=com.atlassian.jira.plugin....
]
Tomaz Cerar commented on WFLY-7266:
-----------------------------------
We do publish it, as it is needed for testing EE7 compatibility, but not really something
end user apps would need to depend upon.
Well, they can, but you get all EE7 APIs at once, not just ones you need.
It could be that we only started doing boms around WF8 times.
BOM wildfly-javaee7-with-tools mismanages some dependencies
-----------------------------------------------------------
Key: WFLY-7266
URL:
https://issues.jboss.org/browse/WFLY-7266
Project: WildFly
Issue Type: Bug
Affects Versions: 10.1.0.Final
Environment: org.wildfly.bom:wildfly-javaee7-with-tools:10.1.0.Final
org.wildfly:wildfly-spec-api:10.1.0.Final
Reporter: kostd kostd
Assignee: Tomaz Cerar
Priority: Optional
Attachments: pom.xml
Earlier was created WFLY-6621 wildfly-spec-api:10.0.0.Final mismanages el-api, jsf-api
Problem still exists in 10.1.0.Final. At this time I understood problem more clearly,
so:
1. I have a dummy project with deps:
{code:title:bom and spec}
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.wildfly.bom</groupId>
<artifactId>wildfly-javaee7-with-tools</artifactId>
<version>10.1.0.Final</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<dependency>
<groupId>org.wildfly</groupId>
<artifactId>wildfly-spec-api</artifactId>
<version>10.1.0.Final</version>
<type>pom</type>
<scope>provided</scope>
</dependency>
</dependencies>
{code}
Maven dependency tree for my project shows that it depends on el-api and jsf-api older
than contained in wildfly-dist:10.1.0.Final`s modules:
{code:title=mvn dependency:tree fragment}
[INFO] --- maven-dependency-plugin:2.8:tree (default-cli) @ test-maven-project ---
[INFO] ru.argustelecom.argus:test-maven-project:ejb:333
[INFO] \- org.wildfly:wildfly-spec-api:pom:10.1.0.Final:provided
[INFO] +- org.glassfish:javax.json:jar:1.0.3:provided
[INFO] +-
org.jboss.spec.javax.ws.rs:jboss-jaxrs-api_2.0_spec:jar:1.0.0.Final:provided
[INFO] +-
org.jboss.spec.javax.batch:jboss-batch-api_1.0_spec:jar:1.0.0.Final:provided
[INFO] | \- javax.inject:javax.inject:jar:1:provided
[INFO] +- org.jboss.spec.javax.ejb:jboss-ejb-api_3.2_spec:jar:1.0.0.Final:provided
[INFO] +- org.jboss.spec.javax.el:jboss-el-api_3.0_spec:jar:1.0.4.Final:provided
[INFO] +-
org.jboss.spec.javax.enterprise.concurrent:jboss-concurrency-api_1.0_spec:jar:1.0.0.Final:provided
[INFO] +- org.jboss.spec.javax.faces:jboss-jsf-api_2.2_spec:jar:2.2.11:provided
[INFO] +-
org.jboss.spec.javax.interceptor:jboss-interceptors-api_1.2_spec:jar:1.0.0.Final:provided
[INFO] +- org.jboss.spec.javax.jms:jboss-jms-api_2.0_spec:jar:1.0.0.Final:provided
[INFO] +-
org.jboss.spec.javax.resource:jboss-connector-api_1.7_spec:jar:1.0.0.Final:provided
[INFO] +-
org.jboss.spec.javax.security.auth.message:jboss-jaspi-api_1.1_spec:jar:1.0.0.Final:provided
[INFO] +-
org.jboss.spec.javax.security.jacc:jboss-jacc-api_1.5_spec:jar:1.0.0.Final:provided
[INFO] +-
org.jboss.spec.javax.servlet:jboss-servlet-api_3.1_spec:jar:1.0.0.Final:provided
[INFO] +-
org.jboss.spec.javax.servlet.jsp:jboss-jsp-api_2.3_spec:jar:1.0.1.Final:provided
[INFO] +-
org.jboss.spec.javax.servlet.jstl:jboss-jstl-api_1.2_spec:jar:1.1.2.Final:provided
[INFO] +-
org.jboss.spec.javax.transaction:jboss-transaction-api_1.2_spec:jar:1.0.0.Final:provided
[INFO] +-
org.jboss.spec.javax.websocket:jboss-websocket-api_1.1_spec:jar:1.1.0.Final:provided
[INFO] +-
org.jboss.spec.javax.xml.bind:jboss-jaxb-api_2.2_spec:jar:1.0.4.Final:provided
[INFO] +-
org.jboss.spec.javax.xml.rpc:jboss-jaxrpc-api_1.1_spec:jar:1.0.1.Final:provided
[INFO] +-
org.jboss.spec.javax.xml.soap:jboss-saaj-api_1.3_spec:jar:1.0.3.Final:provided
[INFO] +-
org.jboss.spec.javax.xml.ws:jboss-jaxws-api_2.2_spec:jar:2.0.2.Final:provided
[INFO] +-
org.hibernate.javax.persistence:hibernate-jpa-2.1-api:jar:1.0.0.Final:provided
[INFO] +- javax.enterprise:cdi-api:jar:1.2:provided
[INFO] +- com.sun.mail:javax.mail:jar:1.5.3:provided
[INFO] | \- javax.activation:activation:jar:1.1.1:provided
[INFO] +-
org.jboss.spec.javax.annotation:jboss-annotations-api_1.2_spec:jar:1.0.0.Final:provided
[INFO] +- javax.validation:validation-api:jar:1.1.0.Final:provided
[INFO] +-
org.jboss.spec.javax.management.j2ee:jboss-j2eemgmt-api_1.1_spec:jar:1.0.1.Final:provided
[INFO] \- org.wildfly.checkstyle:wildfly-checkstyle-config:jar:1.0.4.Final:provided
{code}
el-api and jsf-api must have 1.0.7.Final and 2.2.13 versions respectively
2. This is because wildly-javaee7-with-tools inherits from wildfly-javaee7 which imports
org.jboss.spec:jboss-javaee-7.0:1.0.3.Final who depends on too old el-api and jsf-api:
{code:title=wildfly-javaee7 pom fragment}
..
<version.org.jboss.spec.jboss.javaee.7>1.0.3.Final</version.org.jboss.spec.jboss.javaee.7>
...
<!-- BOM imports -->
<!-- JBoss distributes a complete set of Java EE 7 APIs including
a Bill of Materials (BOM). A BOM specifies the versions of a
"stack" (or
a collection) of artifacts. We use this here so that we always get the
correct
versions of artifacts. Here we use the jboss-javaee-7.0 stack (you can
read
this as the JBoss stack of the Java EE full Profile 7 APIs). You can
actually use
this stack with any version of WildFly that implements Java EE 7! -->
<dependency>
<groupId>org.jboss.spec</groupId>
<artifactId>jboss-javaee-7.0</artifactId>
<version>${version.org.jboss.spec.jboss.javaee.7}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
{code}
{code:title=jboss-javaee-7.0 pom fragment}
...
<version.org.jboss.spec.javax.el>1.0.4.Final</version.org.jboss.spec.javax.el>
...
<version.org.jboss.spec.javax.faces>2.2.11</version.org.jboss.spec.javax.faces>
...
<dependency>
<groupId>org.jboss.spec.javax.el</groupId>
<artifactId>jboss-el-api_3.0_spec</artifactId>
<version>${version.org.jboss.spec.javax.el}</version>
</dependency>
...
<dependency>
<groupId>org.jboss.spec.javax.faces</groupId>
<artifactId>jboss-jsf-api_2.2_spec</artifactId>
<version>${version.org.jboss.spec.javax.faces}</version>
</dependency>
{code}
3. Also can see some other dependencies (not only el-api and jsf-api), which version
doubtful:
org.jboss.spec.javax.servlet.jstl:jboss-jstl-api_1.2_spec:jar:1.1.2.Final (must be
1.1.3.Final)
org.jboss.spec.javax.websocket:jboss-websocket-api_1.1_spec:jar:1.1.0.Final (must be
1.1.1.Final)
org.jboss.spec.javax.xml.ws:jboss-jaxws-api_2.2_spec:jar:2.0.2.Final (must be
2.0.3.Final)
com.sun.mail:javax.mail:jar:1.5.3 (must be 1.5.5)
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)