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

Tomaz Cerar (JIRA) issues at jboss.org
Wed Oct 5 10:57:00 EDT 2016


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

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)


More information about the jboss-jira mailing list