[
https://issues.apache.org/jira/browse/HBASE-24257?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17091821#comment-17091821
]
Nick Dimiduk commented on HBASE-24257:
--------------------------------------
This is not just a stray jar. We have a hard dependency on jersey2 via
hbase-http, and also a transitive dependency on jersey1 via yarn-common. So
functioning http clients are just a roll of the classpath dice in all of our
tests and cli utilities.
> Exclude jsr311-api from classpath
> ---------------------------------
>
> Key: HBASE-24257
> URL: https://issues.apache.org/jira/browse/HBASE-24257
> Project: HBase
> Issue Type: Task
> Components: build
> Affects Versions: 2.3.0
> Reporter: Nick Dimiduk
> Priority: Major
>
> When building on Hadoop3, we get two incompatible version of java-ws rs on
> the class path, both 1.1.1 and 2.0.1. These cause conflicts when running
> chaos monkey and integration test tools.
> {noformat}
> [INFO] | | +-
> org.apache.hadoop:hadoop-yarn-server-timelineservice:jar:3.1.2:test
> [INFO] | | | +- org.apache.commons:commons-csv:jar:1.0:test
> [INFO] | | | \- javax.ws.rs:jsr311-api:jar:1.1.1:test
> {noformat}
> {noformat}
> [INFO] org.apache.hbase:hbase-http:jar:2.3.0-SNAPSHOT
> [INFO] +- javax.ws.rs:javax.ws.rs-api:jar:2.0.1:compile
> {noformat}
> Problem looks like
> {noformat}
> 20/04/23 15:36:04 INFO hbase.RESTApiClusterManager: Executing GET against ...
> Exception in thread "ChaosMonkey" java.lang.NoSuchMethodError: 'void
> javax.ws.rs.core.MultivaluedMap.addAll(java.lang.Object, java.lang.Object[])'
> at
> org.glassfish.jersey.client.ClientRequest.accept(ClientRequest.java:336)
> at
> org.glassfish.jersey.client.JerseyWebTarget.request(JerseyWebTarget.java:221)
> at
> org.glassfish.jersey.client.JerseyWebTarget.request(JerseyWebTarget.java:59)
> at
> org.apache.hadoop.hbase.RESTApiClusterManager.getJsonNodeFromURIGet(RESTApiClusterManager.java:244)
> {noformat}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)