[
https://issues.jboss.org/browse/WFLY-7266?page=com.atlassian.jira.plugin....
]
Tomaz Cerar commented on WFLY-7266:
-----------------------------------
Well, given that it goes for API which doesn't change between minor versions your app
should still work just fine as you only need it for compile against API not runtime.
Also I don't see why do you depend upon
<artifactId>wildfly-spec-api</artifactId> ? as that makes no real sense as all
same deps you get as part of bom and more.
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)