[jboss-jira] [JBoss JIRA] (WFLY-7266) BOM wildfly-javaee7-with-tools mismanages some dependencies

Tomaz Cerar (JIRA) issues at jboss.org
Fri Oct 7 04:05:00 EDT 2016


    [ https://issues.jboss.org/browse/WFLY-7266?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13303811#comment-13303811 ] 

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)


More information about the jboss-jira mailing list