Skip to content

Found banned dependency while wrapping api into a Jenkins plugin #327

@baymac

Description

@baymac

Working on a Gitlab Plugin for Jenkins. Right now the API is inside the plugin so we need to take it out of the plugin. We have planned to use this Gitlab Java API for our Gitlab-API-plugin.

Gitlab-api-plugin is just an empty plugin which wraps the gitlab-api and let's other plugins use it's api.

When I am compiling the plugin I am facing this error:
[INFO] --- maven-enforcer-plugin:3.0.0-M1:enforce (display-info) @ gitlab-api ---
[INFO] Restricted to JDK 1.7 yet javax.xml.bind:jaxb-api:jar:2.3.1:compile contains javax/xml/bind/JAXBElement.class targeted to JDK 1.8
[INFO] Restricted to JDK 1.7 yet org.glassfish.jersey.media:jersey-media-multipart:jar:2.27:compile contains org/glassfish/jersey/media/multipart/BodyPart.class targeted to JDK 1.8
[INFO] Restricted to JDK 1.7 yet org.glassfish.jersey.core:jersey-client:jar:2.27:compile contains org/glassfish/jersey/client/AbortException.class targeted to JDK 1.8
[INFO] Restricted to JDK 1.7 yet javax.ws.rs:javax.ws.rs-api:jar:2.1:compile contains javax/ws/rs/ApplicationPath.class targeted to JDK 1.8
[INFO] Restricted to JDK 1.7 yet org.glassfish.jersey.inject:jersey-hk2:jar:2.27:compile contains org/glassfish/jersey/inject/hk2/AbstractHk2InjectionManager.class targeted to JDK 1.8
[INFO] Restricted to JDK 1.7 yet org.glassfish.jersey.core:jersey-common:jar:2.27:compile contains org/glassfish/jersey/Beta.class targeted to JDK 1.8
[INFO] Restricted to JDK 1.7 yet org.gitlab4j:gitlab4j-api:jar:4.9.19:compile contains org/gitlab4j/api/AbstractApi.class targeted to JDK 1.8
[INFO] Restricted to JDK 1.7 yet org.glassfish.jersey.connectors:jersey-apache-connector:jar:2.27:compile contains org/glassfish/jersey/apache/connector/ApacheClientProperties.class targeted to JDK 1.8
[INFO] Ignoring requireUpperBoundDeps in com.google.guava:guava
[INFO] Ignoring requireUpperBoundDeps in com.google.code.findbugs:jsr305
[WARNING] Rule 3: org.apache.maven.plugins.enforcer.EnforceBytecodeVersion failed with message:
Found Banned Dependency: javax.xml.bind:jaxb-api:jar:2.3.1
Found Banned Dependency: org.glassfish.jersey.media:jersey-media-multipart:jar:2.27
Found Banned Dependency: org.glassfish.jersey.core:jersey-client:jar:2.27
Found Banned Dependency: javax.ws.rs:javax.ws.rs-api:jar:2.1
Found Banned Dependency: org.glassfish.jersey.inject:jersey-hk2:jar:2.27
Found Banned Dependency: org.glassfish.jersey.core:jersey-common:jar:2.27
Found Banned Dependency: org.gitlab4j:gitlab4j-api:jar:4.9.19
Found Banned Dependency: org.glassfish.jersey.connectors:jersey-apache-connector:jar:2.27
Use 'mvn dependency:tree' to locate the source of the banned dependencies.
[WARNING] Rule 6: org.apache.maven.plugins.enforcer.RequireUpperBoundDeps failed with message:
Failed while enforcing RequireUpperBoundDeps. The error(s) are [
Require upper bound dependencies error for javax.servlet:javax.servlet-api:3.1.0 paths to dependency are:
+-io.jenkins.plugins:gitlab-api:1.0-SNAPSHOT
  +-javax.servlet:javax.servlet-api:3.1.0
and
+-io.jenkins.plugins:gitlab-api:1.0-SNAPSHOT
  +-org.gitlab4j:gitlab4j-api:4.9.19
    +-javax.servlet:javax.servlet-api:3.1.0 (managed) <-- javax.servlet:javax.servlet-api:4.0.1
and
+-io.jenkins.plugins:gitlab-api:1.0-SNAPSHOT
  +-org.jenkins-ci.main:jenkins-test-harness:2.34
    +-org.eclipse.jetty:jetty-security:9.4.5.v20170502
      +-org.eclipse.jetty:jetty-server:9.4.5.v20170502
        +-javax.servlet:javax.servlet-api:3.1.0 (managed) <-- javax.servlet:javax.servlet-api:4.0.1
]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 15.537 s
[INFO] Finished at: 2019-04-06T06:26:20+05:30
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-enforcer-plugin:3.0.0-M1:enforce (display-info) on project gitlab-api: Some Enforcer rules have failed. Look above for specific messages explaining why the rule failed. -> [Help 1]
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException

I think it says some of the libraries used in this API doesn't support JDK 1.8.

Our plugin will be using some Java 8 features so I also want this API to support Java 8. How much work is needed to support Java 8?

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions