[ 
https://issues.apache.org/jira/browse/CASSSIDECAR-261?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Stefan Miklosovic updated CASSSIDECAR-261:
------------------------------------------
    Description: 
I am trying to consume sidecar in my Maven project, I want to start Sidecar as 
part of a test, I have this:

{code}
    @Test
    public void startSidecar()
    {
        Path sidecarConfig = Paths.get("src/test/resources/sidecar-test.yaml");
        Injector injector = 
Guice.createInjector(SidecarModules.all(sidecarConfig));
        Server sidecarServer = injector.getInstance(Server.class);
        Future<String> start = sidecarServer.start();
    }
{code}

This error happens:

{code}
PM
com.google.inject.ProvisionException: Unable to provision, see the following 
errors:

1) Error injecting constructor, java.lang.NoSuchMethodError: 'void 
org.apache.cassandra.sidecar.client.VertxHttpClient.<init>(io.vertx.core.Vertx, 
io.vertx.ext.web.client.WebClient, 
org.apache.cassandra.sidecar.client.HttpClientConfig)'
  at 
org.apache.cassandra.sidecar.utils.SidecarClientProvider.<init>(SidecarClientProvider.java:74)
  at 
org.apache.cassandra.sidecar.utils.SidecarClientProvider.class(SidecarClientProvider.java:55)
  while locating org.apache.cassandra.sidecar.utils.SidecarClientProvider
    for the 1st parameter of 
org.apache.cassandra.sidecar.modules.CdcModule.sidecarHealthProvider(CdcModule.java:142)
  at 
org.apache.cassandra.sidecar.modules.CdcModule.sidecarHealthProvider(CdcModule.java:142)
  while locating 
org.apache.cassandra.sidecar.coordination.SidecarPeerHealthProvider
{code}

I go to see what is in SidecarClientProvider (see attached image)

When I hover over it, it says:

{code}
Required type
Provided
vertx:
o.a.c.sidecar.client.shaded.io.vertx.core.Vertx
io.vertx.core.Vertx
webClient:
o.a.c.sidecar.client.shaded.io.vertx.ext.web.client.WebClient
io.vertx.ext.web.client.WebClient
{code}

so VertxHttpClient wants o.a.c.sidecar.client.shaded... but it got  io.vertx...

dependency tree:

{code}
[INFO] +- 
org.apache.cassandra.spark:cassandra-analytics-core_spark3_2.12:jar:1.0.0:compile
[INFO] |  +- 
org.apache.cassandra.spark:cassandra-bridge_spark3_2.12:jar:1.0.0:compile
[INFO] |  +- 
org.apache.cassandra.spark:cassandra-analytics-spark-converter_spark3_2.12:jar:1.0.0:compile
[INFO] |  +- 
org.apache.cassandra.spark:analytics-sidecar-vertx-client-shaded:jar:1.0.0:compile
[INFO] |  |  \- 
org.apache.cassandra.spark:analytics-sidecar-vertx-client:jar:1.0.0:compile
[INFO] |  |     \- 
org.apache.cassandra.spark:analytics-sidecar-client:jar:1.0.0:compile
[INFO] |  |        \- 
org.apache.cassandra.spark:analytics-sidecar-client-common:jar:1.0.0:compile
[INFO] |  +- 
org.apache.cassandra.spark:cassandra-analytics-common_spark3_2.12:jar:1.0.0:compile
[INFO] |  +- org.lz4:lz4-java:jar:1.8.0:compile
[INFO] |  +- net.java.dev.jna:jna:jar:5.9.0:runtime
[INFO] |  \- net.java.dev.jna:jna-platform:jar:5.9.0:runtime
[INFO] +- 
org.apache.cassandra.spark:cassandra-analytics-sidecar-client_spark3_2.12:jar:1.0.0:compile
[INFO] +- org.apache.spark:spark-catalyst_2.12:jar:3.2.2:compile
[INFO] |  +- org.scala-lang:scala-reflect:jar:2.12.15:compile
[INFO] |  |  \- org.scala-lang:scala-library:jar:2.12.15:compile
[INFO] |  +- 
org.scala-lang.modules:scala-parser-combinators_2.12:jar:1.1.2:compile
[INFO] |  +- org.apache.spark:spark-core_2.12:jar:3.2.2:compile
[INFO] |  |  +- org.apache.avro:avro-mapred:jar:1.10.2:compile
[INFO] |  |  |  \- org.apache.avro:avro-ipc:jar:1.10.2:compile
[INFO] |  |  +- com.twitter:chill_2.12:jar:0.10.0:compile
[INFO] |  |  |  \- com.esotericsoftware:kryo-shaded:jar:4.0.2:compile
[INFO] |  |  |     \- com.esotericsoftware:minlog:jar:1.3.0:compile
[INFO] |  |  +- com.twitter:chill-java:jar:0.10.0:compile
[INFO] |  |  +- org.apache.xbean:xbean-asm9-shaded:jar:4.20:compile
[INFO] |  |  +- org.apache.hadoop:hadoop-client-api:jar:3.3.1:compile
[INFO] |  |  +- org.apache.hadoop:hadoop-client-runtime:jar:3.3.1:compile
[INFO] |  |  |  +- org.apache.htrace:htrace-core4:jar:4.1.0-incubating:runtime
[INFO] |  |  |  \- commons-logging:commons-logging:jar:1.1.3:runtime
[INFO] |  |  +- org.apache.spark:spark-launcher_2.12:jar:3.2.2:compile
[INFO] |  |  +- org.apache.spark:spark-kvstore_2.12:jar:3.2.2:compile
[INFO] |  |  |  \- org.fusesource.leveldbjni:leveldbjni-all:jar:1.8:compile
[INFO] |  |  +- org.apache.spark:spark-network-common_2.12:jar:3.2.2:compile
[INFO] |  |  |  \- com.google.crypto.tink:tink:jar:1.6.0:compile
[INFO] |  |  |     +- com.google.protobuf:protobuf-java:jar:3.14.0:compile
[INFO] |  |  |     \- com.google.code.gson:gson:jar:2.8.6:compile
[INFO] |  |  +- org.apache.spark:spark-network-shuffle_2.12:jar:3.2.2:compile
[INFO] |  |  +- javax.activation:activation:jar:1.1.1:compile
[INFO] |  |  +- org.apache.curator:curator-recipes:jar:2.13.0:compile
[INFO] |  |  |  \- org.apache.curator:curator-framework:jar:2.13.0:compile
[INFO] |  |  |     \- org.apache.curator:curator-client:jar:2.13.0:compile
[INFO] |  |  +- org.apache.zookeeper:zookeeper:jar:3.6.2:compile
[INFO] |  |  |  +- commons-lang:commons-lang:jar:2.6:compile
[INFO] |  |  |  \- org.apache.zookeeper:zookeeper-jute:jar:3.6.2:compile
[INFO] |  |  +- jakarta.servlet:jakarta.servlet-api:jar:4.0.3:compile
[INFO] |  |  +- org.apache.commons:commons-math3:jar:3.4.1:compile
[INFO] |  |  +- org.apache.commons:commons-text:jar:1.6:compile
[INFO] |  |  +- commons-io:commons-io:jar:2.8.0:compile
[INFO] |  |  +- commons-collections:commons-collections:jar:3.2.2:compile
[INFO] |  |  +- org.slf4j:jul-to-slf4j:jar:1.7.30:compile
[INFO] |  |  +- org.slf4j:jcl-over-slf4j:jar:1.7.30:compile
[INFO] |  |  +- com.ning:compress-lzf:jar:1.0.3:compile
[INFO] |  |  +- org.xerial.snappy:snappy-java:jar:1.1.8.4:compile
[INFO] |  |  +- com.github.luben:zstd-jni:jar:1.5.0-4:compile
[INFO] |  |  +- org.roaringbitmap:RoaringBitmap:jar:0.9.0:compile
[INFO] |  |  |  \- org.roaringbitmap:shims:jar:0.9.0:runtime
[INFO] |  |  +- commons-net:commons-net:jar:3.1:compile
[INFO] |  |  +- org.scala-lang.modules:scala-xml_2.12:jar:1.2.0:compile
[INFO] |  |  +- org.json4s:json4s-jackson_2.12:jar:3.7.0-M11:compile
[INFO] |  |  |  \- org.json4s:json4s-core_2.12:jar:3.7.0-M11:compile
[INFO] |  |  |     +- org.json4s:json4s-ast_2.12:jar:3.7.0-M11:compile
[INFO] |  |  |     \- org.json4s:json4s-scalap_2.12:jar:3.7.0-M11:compile
[INFO] |  |  +- org.glassfish.jersey.core:jersey-client:jar:2.34:compile
[INFO] |  |  |  +- jakarta.ws.rs:jakarta.ws.rs-api:jar:2.1.6:compile
[INFO] |  |  |  \- org.glassfish.hk2.external:jakarta.inject:jar:2.6.1:compile
[INFO] |  |  +- org.glassfish.jersey.core:jersey-common:jar:2.34:compile
[INFO] |  |  |  +- jakarta.annotation:jakarta.annotation-api:jar:1.3.5:compile
[INFO] |  |  |  \- org.glassfish.hk2:osgi-resource-locator:jar:1.0.3:compile
[INFO] |  |  +- org.glassfish.jersey.core:jersey-server:jar:2.34:compile
[INFO] |  |  |  \- jakarta.validation:jakarta.validation-api:jar:2.0.2:compile
[INFO] |  |  +- 
org.glassfish.jersey.containers:jersey-container-servlet:jar:2.34:compile
[INFO] |  |  +- 
org.glassfish.jersey.containers:jersey-container-servlet-core:jar:2.34:compile
[INFO] |  |  +- org.glassfish.jersey.inject:jersey-hk2:jar:2.34:compile
[INFO] |  |  |  +- org.glassfish.hk2:hk2-locator:jar:2.6.1:compile
[INFO] |  |  |  |  +- 
org.glassfish.hk2.external:aopalliance-repackaged:jar:2.6.1:compile
[INFO] |  |  |  |  +- org.glassfish.hk2:hk2-api:jar:2.6.1:compile
[INFO] |  |  |  |  \- org.glassfish.hk2:hk2-utils:jar:2.6.1:compile
[INFO] |  |  |  \- org.javassist:javassist:jar:3.25.0-GA:compile
[INFO] |  |  +- io.netty:netty-all:jar:4.1.68.Final:compile
[INFO] |  |  +- com.clearspring.analytics:stream:jar:2.9.6:compile
[INFO] |  |  +- io.dropwizard.metrics:metrics-core:jar:4.2.0:compile
[INFO] |  |  +- io.dropwizard.metrics:metrics-jvm:jar:4.2.0:compile
[INFO] |  |  +- io.dropwizard.metrics:metrics-json:jar:4.2.0:compile
[INFO] |  |  +- io.dropwizard.metrics:metrics-graphite:jar:4.2.0:compile
[INFO] |  |  +- io.dropwizard.metrics:metrics-jmx:jar:4.2.0:compile
[INFO] |  |  +- 
com.fasterxml.jackson.module:jackson-module-scala_2.12:jar:2.12.3:compile
[INFO] |  |  |  \- com.thoughtworks.paranamer:paranamer:jar:2.8:compile
[INFO] |  |  +- org.apache.ivy:ivy:jar:2.5.0:compile
[INFO] |  |  +- oro:oro:jar:2.0.8:compile
[INFO] |  |  +- net.razorvine:pyrolite:jar:4.30:compile
[INFO] |  |  +- net.sf.py4j:py4j:jar:0.10.9.5:compile
[INFO] |  |  \- org.apache.commons:commons-crypto:jar:1.1.0:compile
[INFO] |  +- org.apache.spark:spark-tags_2.12:jar:3.2.2:compile
[INFO] |  +- org.apache.spark:spark-unsafe_2.12:jar:3.2.2:compile
[INFO] |  +- org.apache.spark:spark-sketch_2.12:jar:3.2.2:compile
[INFO] |  +- org.codehaus.janino:janino:jar:3.0.16:compile
[INFO] |  +- org.codehaus.janino:commons-compiler:jar:3.0.16:compile
[INFO] |  +- org.antlr:antlr4-runtime:jar:4.8:compile
[INFO] |  +- javax.xml.bind:jaxb-api:jar:2.2.11:compile
[INFO] |  +- commons-codec:commons-codec:jar:1.15:compile
[INFO] |  +- com.univocity:univocity-parsers:jar:2.9.1:compile
[INFO] |  +- org.apache.arrow:arrow-vector:jar:2.0.0:compile
[INFO] |  |  +- org.apache.arrow:arrow-format:jar:2.0.0:compile
[INFO] |  |  +- org.apache.arrow:arrow-memory-core:jar:2.0.0:compile
[INFO] |  |  \- com.google.flatbuffers:flatbuffers-java:jar:1.9.0:compile
[INFO] |  +- org.apache.arrow:arrow-memory-netty:jar:2.0.0:compile
[INFO] |  \- org.spark-project.spark:unused:jar:1.0.0:compile
[INFO] +- org.apache.spark:spark-avro_2.12:jar:3.2.2:compile
[INFO] |  \- org.tukaani:xz:jar:1.8:compile
[INFO] +- org.apache.avro:avro:jar:1.11.4:compile
[INFO] |  +- com.fasterxml.jackson.core:jackson-core:jar:2.14.3:compile
[INFO] |  +- com.fasterxml.jackson.core:jackson-databind:jar:2.14.3:compile
[INFO] |  |  \- 
com.fasterxml.jackson.core:jackson-annotations:jar:2.14.3:compile
[INFO] |  \- org.apache.commons:commons-compress:jar:1.26.2:compile
[INFO] +- org.apache.parquet:parquet-avro:jar:1.12.2:compile
[INFO] |  +- org.apache.parquet:parquet-column:jar:1.12.2:compile
[INFO] |  |  \- org.apache.parquet:parquet-encoding:jar:1.12.2:compile
[INFO] |  +- org.apache.parquet:parquet-hadoop:jar:1.12.2:compile
[INFO] |  |  +- org.apache.parquet:parquet-jackson:jar:1.12.2:compile
[INFO] |  |  \- commons-pool:commons-pool:jar:1.6:compile
[INFO] |  \- org.apache.parquet:parquet-format-structures:jar:1.12.2:compile
[INFO] |     \- javax.annotation:javax.annotation-api:jar:1.3.2:compile
[INFO] +- org.apache.parquet:parquet-common:jar:1.12.2:compile
[INFO] |  \- org.apache.yetus:audience-annotations:jar:0.12.0:compile
[INFO] +- info.picocli:picocli:jar:4.7.6:compile
[INFO] +- org.slf4j:slf4j-api:jar:2.0.17:compile
[INFO] +- org.slf4j:slf4j-log4j12:jar:1.7.30:compile
[INFO] |  \- log4j:log4j:jar:1.2.17:compile
[INFO] +- ch.qos.logback:logback-classic:jar:1.5.18:compile
[INFO] |  \- ch.qos.logback:logback-core:jar:1.5.18:compile
[INFO] +- com.google.inject:guice:jar:4.2.3:test
[INFO] |  +- javax.inject:javax.inject:jar:1:test
[INFO] |  +- aopalliance:aopalliance:jar:1.0:test
[INFO] |  \- com.google.guava:guava:jar:27.1-jre:compile
[INFO] |     +- com.google.guava:failureaccess:jar:1.0.1:compile
[INFO] |     +- 
com.google.guava:listenablefuture:jar:9999.0-empty-to-avoid-conflict-with-guava:compile
[INFO] |     \- org.codehaus.mojo:animal-sniffer-annotations:jar:1.17:compile
[INFO] +- io.vertx:vertx-junit5:jar:4.5.13:test
[INFO] |  \- io.vertx:vertx-core:jar:4.5.13:compile
[INFO] |     +- io.netty:netty-common:jar:4.1.118.Final:compile
[INFO] |     +- io.netty:netty-buffer:jar:4.1.118.Final:compile
[INFO] |     +- io.netty:netty-transport:jar:4.1.118.Final:compile
[INFO] |     +- io.netty:netty-handler:jar:4.1.118.Final:compile
[INFO] |     +- io.netty:netty-handler-proxy:jar:4.1.118.Final:compile
[INFO] |     |  \- io.netty:netty-codec-socks:jar:4.1.118.Final:compile
[INFO] |     +- io.netty:netty-codec-http:jar:4.1.118.Final:compile
[INFO] |     +- io.netty:netty-codec-http2:jar:4.1.118.Final:compile
[INFO] |     +- io.netty:netty-resolver:jar:4.1.118.Final:compile
[INFO] |     \- io.netty:netty-resolver-dns:jar:4.1.118.Final:compile
[INFO] |        \- io.netty:netty-codec-dns:jar:4.1.118.Final:compile
[INFO] +- org.apache.cassandra:sidecar-server:jar:0.2-SNAPSHOT:test
[INFO] |  +- io.vertx:vertx-web:jar:4.5.13:test
[INFO] |  |  +- io.vertx:vertx-web-common:jar:4.5.13:compile
[INFO] |  |  +- io.vertx:vertx-auth-common:jar:4.5.13:compile
[INFO] |  |  \- io.vertx:vertx-bridge-common:jar:4.5.13:test
[INFO] |  +- io.vertx:vertx-dropwizard-metrics:jar:4.5.13:test
[INFO] |  +- io.vertx:vertx-web-client:jar:4.5.13:compile
[INFO] |  |  \- io.vertx:vertx-uri-template:jar:4.5.13:compile
[INFO] |  +- io.vertx:vertx-auth-jwt:jar:4.5.13:test
[INFO] |  +- io.vertx:vertx-auth-oauth2:jar:4.5.13:test
[INFO] |  +- com.datastax.cassandra:cassandra-driver-core:jar:3.11.3:test
[INFO] |  |  +- com.github.jnr:jnr-ffi:jar:2.1.7:test
[INFO] |  |  |  +- com.github.jnr:jffi:jar:1.2.16:test
[INFO] |  |  |  +- com.github.jnr:jffi:jar:native:1.2.16:test
[INFO] |  |  |  +- org.ow2.asm:asm:jar:5.0.3:test
[INFO] |  |  |  +- org.ow2.asm:asm-commons:jar:5.0.3:test
[INFO] |  |  |  +- org.ow2.asm:asm-analysis:jar:5.0.3:test
[INFO] |  |  |  +- org.ow2.asm:asm-tree:jar:5.0.3:test
[INFO] |  |  |  +- org.ow2.asm:asm-util:jar:5.0.3:test
[INFO] |  |  |  \- com.github.jnr:jnr-x86asm:jar:1.0.2:test
[INFO] |  |  \- com.github.jnr:jnr-posix:jar:3.0.44:test
[INFO] |  |     \- com.github.jnr:jnr-constants:jar:0.9.9:test
[INFO] |  +- com.github.ben-manes.caffeine:caffeine:jar:2.9.3:test
[INFO] |  +- org.apache.commons:commons-lang3:jar:3.13.0:compile
[INFO] |  +- 
com.fasterxml.jackson.dataformat:jackson-dataformat-yaml:jar:2.14.3:test
[INFO] |  |  \- org.yaml:snakeyaml:jar:1.33:test
[INFO] |  +- software.amazon.awssdk:s3:jar:2.26.12:test
[INFO] |  |  +- software.amazon.awssdk:aws-xml-protocol:jar:2.26.12:test
[INFO] |  |  |  \- software.amazon.awssdk:aws-query-protocol:jar:2.26.12:test
[INFO] |  |  +- software.amazon.awssdk:protocol-core:jar:2.26.12:test
[INFO] |  |  +- software.amazon.awssdk:arns:jar:2.26.12:test
[INFO] |  |  +- software.amazon.awssdk:profiles:jar:2.26.12:test
[INFO] |  |  +- software.amazon.awssdk:crt-core:jar:2.26.12:test
[INFO] |  |  +- software.amazon.awssdk:http-auth:jar:2.26.12:test
[INFO] |  |  +- software.amazon.awssdk:identity-spi:jar:2.26.12:test
[INFO] |  |  +- software.amazon.awssdk:http-auth-spi:jar:2.26.12:test
[INFO] |  |  +- software.amazon.awssdk:http-auth-aws:jar:2.26.12:test
[INFO] |  |  +- software.amazon.awssdk:checksums:jar:2.26.12:test
[INFO] |  |  +- software.amazon.awssdk:checksums-spi:jar:2.26.12:test
[INFO] |  |  +- software.amazon.awssdk:retries-spi:jar:2.26.12:test
[INFO] |  |  +- software.amazon.awssdk:sdk-core:jar:2.26.12:test
[INFO] |  |  |  \- software.amazon.awssdk:retries:jar:2.26.12:test
[INFO] |  |  +- software.amazon.awssdk:auth:jar:2.26.12:test
[INFO] |  |  |  \- software.amazon.eventstream:eventstream:jar:1.0.1:test
[INFO] |  |  +- software.amazon.awssdk:http-client-spi:jar:2.26.12:test
[INFO] |  |  +- software.amazon.awssdk:regions:jar:2.26.12:test
[INFO] |  |  +- software.amazon.awssdk:annotations:jar:2.26.12:test
[INFO] |  |  +- software.amazon.awssdk:utils:jar:2.26.12:test
[INFO] |  |  +- software.amazon.awssdk:aws-core:jar:2.26.12:test
[INFO] |  |  +- software.amazon.awssdk:metrics-spi:jar:2.26.12:test
[INFO] |  |  +- software.amazon.awssdk:json-utils:jar:2.26.12:test
[INFO] |  |  |  \- 
software.amazon.awssdk:third-party-jackson-core:jar:2.26.12:test
[INFO] |  |  +- software.amazon.awssdk:endpoints-spi:jar:2.26.12:test
[INFO] |  |  \- software.amazon.awssdk:apache-client:jar:2.26.12:test
[INFO] |  |     +- org.apache.httpcomponents:httpclient:jar:4.5.13:test
[INFO] |  |     \- org.apache.httpcomponents:httpcore:jar:4.4.13:test
[INFO] |  +- software.amazon.awssdk:netty-nio-client:jar:2.26.12:test
[INFO] |  |  +- io.netty:netty-codec:jar:4.1.111.Final:compile
[INFO] |  |  \- org.reactivestreams:reactive-streams:jar:1.0.4:test
[INFO] |  +- io.netty:netty-transport-classes-epoll:jar:4.1.86.Final:test
[INFO] |  |  \- 
io.netty:netty-transport-native-unix-common:jar:4.1.86.Final:compile
[INFO] |  +- io.netty:netty-tcnative-boringssl-static:jar:2.0.61.Final:runtime
[INFO] |  |  +- io.netty:netty-tcnative-classes:jar:2.0.61.Final:runtime
[INFO] |  |  \- 
io.netty:netty-tcnative-boringssl-static:jar:windows-x86_64:2.0.61.Final:runtime
[INFO] |  +- 
io.netty:netty-tcnative-boringssl-static:jar:linux-x86_64:2.0.61.Final:runtime
[INFO] |  +- 
io.netty:netty-tcnative-boringssl-static:jar:osx-aarch_64:2.0.61.Final:runtime
[INFO] |  +- 
io.netty:netty-tcnative-boringssl-static:jar:linux-aarch_64:2.0.61.Final:runtime
[INFO] |  +- 
io.netty:netty-tcnative-boringssl-static:jar:osx-x86_64:2.0.61.Final:runtime
[INFO] |  +- io.acryl:datahub-client:jar:0.15.0-3:test
[INFO] |  +- org.apache.cassandra:sidecar-server-common:jar:0.2-SNAPSHOT:test
[INFO] |  |  \- org.apache.cassandra:sidecar-client-common:jar:0.2-SNAPSHOT:test
[INFO] |  +- org.apache.cassandra:sidecar-adapters-base:jar:0.2-SNAPSHOT:test
[INFO] |  +- 
org.apache.cassandra:sidecar-adapters-cassandra41:jar:0.2-SNAPSHOT:test
[INFO] |  +- org.apache.cassandra:sidecar-vertx-auth-mtls:jar:0.2-SNAPSHOT:test
[INFO] |  |  \- io.vertx:vertx-codegen:jar:4.5.13:test
[INFO] |  \- org.apache.cassandra:sidecar-vertx-client:jar:0.2-SNAPSHOT:test
[INFO] |     \- org.apache.cassandra:sidecar-client:jar:0.2-SNAPSHOT:test
[INFO] +- org.apache.cassandra:sidecar-vertx-client-all:jar:0.2-SNAPSHOT:test
[INFO] +- org.junit.jupiter:junit-jupiter-engine:jar:5.9.2:test
[INFO] |  +- org.junit.platform:junit-platform-engine:jar:1.9.2:test
[INFO] |  \- org.apiguardian:apiguardian-api:jar:1.1.2:test
[INFO] +- org.junit.jupiter:junit-jupiter-params:jar:5.9.2:test
[INFO] +- org.junit.jupiter:junit-jupiter-api:jar:5.9.2:test
[INFO] |  +- org.opentest4j:opentest4j:jar:1.2.0:test
[INFO] |  \- org.junit.platform:junit-platform-commons:jar:1.9.2:test
[INFO] +- org.junit.vintage:junit-vintage-engine:jar:5.9.2:test
[INFO] |  \- junit:junit:jar:4.13.2:test
[INFO] |     \- org.hamcrest:hamcrest-core:jar:1.3:test
[INFO] +- org.mockito:mockito-core:jar:2.23.4:test
[INFO] |  +- net.bytebuddy:byte-buddy:jar:1.9.3:test
[INFO] |  +- net.bytebuddy:byte-buddy-agent:jar:1.9.3:test
[INFO] |  \- org.objenesis:objenesis:jar:2.6:compile
[INFO] +- org.assertj:assertj-core:jar:3.26.3:test
[INFO] \- com.google.guava:guava-testlib:jar:33.1.0-jre:test
[INFO]    +- com.google.code.findbugs:jsr305:jar:3.0.2:compile
[INFO]    +- org.checkerframework:checker-qual:jar:3.42.0:compile
[INFO]    +- com.google.errorprone:error_prone_annotations:jar:2.26.1:compile
[INFO]    \- com.google.j2objc:j2objc-annotations:jar:3.0.0:compile
{code}

dependencies in pom.xml: 
https://gist.githubusercontent.com/smiklosovic/1e5c6c23dc8e2343b82242f690fb9a0d/raw/3bb80913c3d28408904ffb67745b36486988af42/gistfile1.txt

We have been investigating this issue with Yifan and he reproduced, a 
reproducer in gradle is this:

{code}
plugins {
    id 'java'
}

group = 'org.example'
version = '1.0-SNAPSHOT'

repositories {
    mavenLocal()
}

dependencies {
    testImplementation 'org.apache.cassandra:sidecar-server:0.2-SNAPSHOT'
    testImplementation 
'org.apache.cassandra:sidecar-vertx-client-all:0.2-SNAPSHOT'
    testImplementation 'com.google.inject:guice:4.2.3'
    testImplementation 'io.vertx:vertx-junit5:4.5.13'

    testImplementation platform('org.junit:junit-bom:5.10.0')
    testImplementation 'org.junit.jupiter:junit-jupiter'
}

test {
    useJUnitPlatform()
}
{code}

However, he reported that However, if removing sidecar-vertx-client-all, server 
can start up.

This is however still problematic, because for now cassandra-analytics-core 
depends on analytics-sidecar-vertx-client-shaded which will cause same problem.

This basically renders re-using Sidecar in downstream projects when a developer 
wants to start Sidecar programmatically impossible - when it is used together 
with analytics library. 

There might be projects as I am working on which are building on top of 
analytics and what to test whole Sidecar + Cassandra combo in tests to test 
whole solution but for now it seems to be impossible.




  was:
I am trying to consume sidecar in my Maven project, I want to start Sidecar as 
part of a test, I have this:

{code}
    @Test
    public void startSidecar()
    {
        Path sidecarConfig = Paths.get("src/test/resources/sidecar-test.yaml");
        Injector injector = 
Guice.createInjector(SidecarModules.all(sidecarConfig));
        Server sidecarServer = injector.getInstance(Server.class);
        Future<String> start = sidecarServer.start();
    }
{code}

This error happens:

{code}
PM
com.google.inject.ProvisionException: Unable to provision, see the following 
errors:

1) Error injecting constructor, java.lang.NoSuchMethodError: 'void 
org.apache.cassandra.sidecar.client.VertxHttpClient.<init>(io.vertx.core.Vertx, 
io.vertx.ext.web.client.WebClient, 
org.apache.cassandra.sidecar.client.HttpClientConfig)'
  at 
org.apache.cassandra.sidecar.utils.SidecarClientProvider.<init>(SidecarClientProvider.java:74)
  at 
org.apache.cassandra.sidecar.utils.SidecarClientProvider.class(SidecarClientProvider.java:55)
  while locating org.apache.cassandra.sidecar.utils.SidecarClientProvider
    for the 1st parameter of 
org.apache.cassandra.sidecar.modules.CdcModule.sidecarHealthProvider(CdcModule.java:142)
  at 
org.apache.cassandra.sidecar.modules.CdcModule.sidecarHealthProvider(CdcModule.java:142)
  while locating 
org.apache.cassandra.sidecar.coordination.SidecarPeerHealthProvider
{code}

I go to see what is in SidecarClientProvider:




> Sidecar can not be started programmatically in tests in downstream projects 
> using analytics library
> ---------------------------------------------------------------------------------------------------
>
>                 Key: CASSSIDECAR-261
>                 URL: https://issues.apache.org/jira/browse/CASSSIDECAR-261
>             Project: Sidecar for Apache Cassandra
>          Issue Type: Bug
>          Components: Build
>            Reporter: Stefan Miklosovic
>            Priority: Major
>         Attachments: image.png
>
>
> I am trying to consume sidecar in my Maven project, I want to start Sidecar 
> as part of a test, I have this:
> {code}
>     @Test
>     public void startSidecar()
>     {
>         Path sidecarConfig = 
> Paths.get("src/test/resources/sidecar-test.yaml");
>         Injector injector = 
> Guice.createInjector(SidecarModules.all(sidecarConfig));
>         Server sidecarServer = injector.getInstance(Server.class);
>         Future<String> start = sidecarServer.start();
>     }
> {code}
> This error happens:
> {code}
> PM
> com.google.inject.ProvisionException: Unable to provision, see the following 
> errors:
> 1) Error injecting constructor, java.lang.NoSuchMethodError: 'void 
> org.apache.cassandra.sidecar.client.VertxHttpClient.<init>(io.vertx.core.Vertx,
>  io.vertx.ext.web.client.WebClient, 
> org.apache.cassandra.sidecar.client.HttpClientConfig)'
>   at 
> org.apache.cassandra.sidecar.utils.SidecarClientProvider.<init>(SidecarClientProvider.java:74)
>   at 
> org.apache.cassandra.sidecar.utils.SidecarClientProvider.class(SidecarClientProvider.java:55)
>   while locating org.apache.cassandra.sidecar.utils.SidecarClientProvider
>     for the 1st parameter of 
> org.apache.cassandra.sidecar.modules.CdcModule.sidecarHealthProvider(CdcModule.java:142)
>   at 
> org.apache.cassandra.sidecar.modules.CdcModule.sidecarHealthProvider(CdcModule.java:142)
>   while locating 
> org.apache.cassandra.sidecar.coordination.SidecarPeerHealthProvider
> {code}
> I go to see what is in SidecarClientProvider (see attached image)
> When I hover over it, it says:
> {code}
> Required type
> Provided
> vertx:
> o.a.c.sidecar.client.shaded.io.vertx.core.Vertx
> io.vertx.core.Vertx
> webClient:
> o.a.c.sidecar.client.shaded.io.vertx.ext.web.client.WebClient
> io.vertx.ext.web.client.WebClient
> {code}
> so VertxHttpClient wants o.a.c.sidecar.client.shaded... but it got  
> io.vertx...
> dependency tree:
> {code}
> [INFO] +- 
> org.apache.cassandra.spark:cassandra-analytics-core_spark3_2.12:jar:1.0.0:compile
> [INFO] |  +- 
> org.apache.cassandra.spark:cassandra-bridge_spark3_2.12:jar:1.0.0:compile
> [INFO] |  +- 
> org.apache.cassandra.spark:cassandra-analytics-spark-converter_spark3_2.12:jar:1.0.0:compile
> [INFO] |  +- 
> org.apache.cassandra.spark:analytics-sidecar-vertx-client-shaded:jar:1.0.0:compile
> [INFO] |  |  \- 
> org.apache.cassandra.spark:analytics-sidecar-vertx-client:jar:1.0.0:compile
> [INFO] |  |     \- 
> org.apache.cassandra.spark:analytics-sidecar-client:jar:1.0.0:compile
> [INFO] |  |        \- 
> org.apache.cassandra.spark:analytics-sidecar-client-common:jar:1.0.0:compile
> [INFO] |  +- 
> org.apache.cassandra.spark:cassandra-analytics-common_spark3_2.12:jar:1.0.0:compile
> [INFO] |  +- org.lz4:lz4-java:jar:1.8.0:compile
> [INFO] |  +- net.java.dev.jna:jna:jar:5.9.0:runtime
> [INFO] |  \- net.java.dev.jna:jna-platform:jar:5.9.0:runtime
> [INFO] +- 
> org.apache.cassandra.spark:cassandra-analytics-sidecar-client_spark3_2.12:jar:1.0.0:compile
> [INFO] +- org.apache.spark:spark-catalyst_2.12:jar:3.2.2:compile
> [INFO] |  +- org.scala-lang:scala-reflect:jar:2.12.15:compile
> [INFO] |  |  \- org.scala-lang:scala-library:jar:2.12.15:compile
> [INFO] |  +- 
> org.scala-lang.modules:scala-parser-combinators_2.12:jar:1.1.2:compile
> [INFO] |  +- org.apache.spark:spark-core_2.12:jar:3.2.2:compile
> [INFO] |  |  +- org.apache.avro:avro-mapred:jar:1.10.2:compile
> [INFO] |  |  |  \- org.apache.avro:avro-ipc:jar:1.10.2:compile
> [INFO] |  |  +- com.twitter:chill_2.12:jar:0.10.0:compile
> [INFO] |  |  |  \- com.esotericsoftware:kryo-shaded:jar:4.0.2:compile
> [INFO] |  |  |     \- com.esotericsoftware:minlog:jar:1.3.0:compile
> [INFO] |  |  +- com.twitter:chill-java:jar:0.10.0:compile
> [INFO] |  |  +- org.apache.xbean:xbean-asm9-shaded:jar:4.20:compile
> [INFO] |  |  +- org.apache.hadoop:hadoop-client-api:jar:3.3.1:compile
> [INFO] |  |  +- org.apache.hadoop:hadoop-client-runtime:jar:3.3.1:compile
> [INFO] |  |  |  +- org.apache.htrace:htrace-core4:jar:4.1.0-incubating:runtime
> [INFO] |  |  |  \- commons-logging:commons-logging:jar:1.1.3:runtime
> [INFO] |  |  +- org.apache.spark:spark-launcher_2.12:jar:3.2.2:compile
> [INFO] |  |  +- org.apache.spark:spark-kvstore_2.12:jar:3.2.2:compile
> [INFO] |  |  |  \- org.fusesource.leveldbjni:leveldbjni-all:jar:1.8:compile
> [INFO] |  |  +- org.apache.spark:spark-network-common_2.12:jar:3.2.2:compile
> [INFO] |  |  |  \- com.google.crypto.tink:tink:jar:1.6.0:compile
> [INFO] |  |  |     +- com.google.protobuf:protobuf-java:jar:3.14.0:compile
> [INFO] |  |  |     \- com.google.code.gson:gson:jar:2.8.6:compile
> [INFO] |  |  +- org.apache.spark:spark-network-shuffle_2.12:jar:3.2.2:compile
> [INFO] |  |  +- javax.activation:activation:jar:1.1.1:compile
> [INFO] |  |  +- org.apache.curator:curator-recipes:jar:2.13.0:compile
> [INFO] |  |  |  \- org.apache.curator:curator-framework:jar:2.13.0:compile
> [INFO] |  |  |     \- org.apache.curator:curator-client:jar:2.13.0:compile
> [INFO] |  |  +- org.apache.zookeeper:zookeeper:jar:3.6.2:compile
> [INFO] |  |  |  +- commons-lang:commons-lang:jar:2.6:compile
> [INFO] |  |  |  \- org.apache.zookeeper:zookeeper-jute:jar:3.6.2:compile
> [INFO] |  |  +- jakarta.servlet:jakarta.servlet-api:jar:4.0.3:compile
> [INFO] |  |  +- org.apache.commons:commons-math3:jar:3.4.1:compile
> [INFO] |  |  +- org.apache.commons:commons-text:jar:1.6:compile
> [INFO] |  |  +- commons-io:commons-io:jar:2.8.0:compile
> [INFO] |  |  +- commons-collections:commons-collections:jar:3.2.2:compile
> [INFO] |  |  +- org.slf4j:jul-to-slf4j:jar:1.7.30:compile
> [INFO] |  |  +- org.slf4j:jcl-over-slf4j:jar:1.7.30:compile
> [INFO] |  |  +- com.ning:compress-lzf:jar:1.0.3:compile
> [INFO] |  |  +- org.xerial.snappy:snappy-java:jar:1.1.8.4:compile
> [INFO] |  |  +- com.github.luben:zstd-jni:jar:1.5.0-4:compile
> [INFO] |  |  +- org.roaringbitmap:RoaringBitmap:jar:0.9.0:compile
> [INFO] |  |  |  \- org.roaringbitmap:shims:jar:0.9.0:runtime
> [INFO] |  |  +- commons-net:commons-net:jar:3.1:compile
> [INFO] |  |  +- org.scala-lang.modules:scala-xml_2.12:jar:1.2.0:compile
> [INFO] |  |  +- org.json4s:json4s-jackson_2.12:jar:3.7.0-M11:compile
> [INFO] |  |  |  \- org.json4s:json4s-core_2.12:jar:3.7.0-M11:compile
> [INFO] |  |  |     +- org.json4s:json4s-ast_2.12:jar:3.7.0-M11:compile
> [INFO] |  |  |     \- org.json4s:json4s-scalap_2.12:jar:3.7.0-M11:compile
> [INFO] |  |  +- org.glassfish.jersey.core:jersey-client:jar:2.34:compile
> [INFO] |  |  |  +- jakarta.ws.rs:jakarta.ws.rs-api:jar:2.1.6:compile
> [INFO] |  |  |  \- org.glassfish.hk2.external:jakarta.inject:jar:2.6.1:compile
> [INFO] |  |  +- org.glassfish.jersey.core:jersey-common:jar:2.34:compile
> [INFO] |  |  |  +- jakarta.annotation:jakarta.annotation-api:jar:1.3.5:compile
> [INFO] |  |  |  \- org.glassfish.hk2:osgi-resource-locator:jar:1.0.3:compile
> [INFO] |  |  +- org.glassfish.jersey.core:jersey-server:jar:2.34:compile
> [INFO] |  |  |  \- jakarta.validation:jakarta.validation-api:jar:2.0.2:compile
> [INFO] |  |  +- 
> org.glassfish.jersey.containers:jersey-container-servlet:jar:2.34:compile
> [INFO] |  |  +- 
> org.glassfish.jersey.containers:jersey-container-servlet-core:jar:2.34:compile
> [INFO] |  |  +- org.glassfish.jersey.inject:jersey-hk2:jar:2.34:compile
> [INFO] |  |  |  +- org.glassfish.hk2:hk2-locator:jar:2.6.1:compile
> [INFO] |  |  |  |  +- 
> org.glassfish.hk2.external:aopalliance-repackaged:jar:2.6.1:compile
> [INFO] |  |  |  |  +- org.glassfish.hk2:hk2-api:jar:2.6.1:compile
> [INFO] |  |  |  |  \- org.glassfish.hk2:hk2-utils:jar:2.6.1:compile
> [INFO] |  |  |  \- org.javassist:javassist:jar:3.25.0-GA:compile
> [INFO] |  |  +- io.netty:netty-all:jar:4.1.68.Final:compile
> [INFO] |  |  +- com.clearspring.analytics:stream:jar:2.9.6:compile
> [INFO] |  |  +- io.dropwizard.metrics:metrics-core:jar:4.2.0:compile
> [INFO] |  |  +- io.dropwizard.metrics:metrics-jvm:jar:4.2.0:compile
> [INFO] |  |  +- io.dropwizard.metrics:metrics-json:jar:4.2.0:compile
> [INFO] |  |  +- io.dropwizard.metrics:metrics-graphite:jar:4.2.0:compile
> [INFO] |  |  +- io.dropwizard.metrics:metrics-jmx:jar:4.2.0:compile
> [INFO] |  |  +- 
> com.fasterxml.jackson.module:jackson-module-scala_2.12:jar:2.12.3:compile
> [INFO] |  |  |  \- com.thoughtworks.paranamer:paranamer:jar:2.8:compile
> [INFO] |  |  +- org.apache.ivy:ivy:jar:2.5.0:compile
> [INFO] |  |  +- oro:oro:jar:2.0.8:compile
> [INFO] |  |  +- net.razorvine:pyrolite:jar:4.30:compile
> [INFO] |  |  +- net.sf.py4j:py4j:jar:0.10.9.5:compile
> [INFO] |  |  \- org.apache.commons:commons-crypto:jar:1.1.0:compile
> [INFO] |  +- org.apache.spark:spark-tags_2.12:jar:3.2.2:compile
> [INFO] |  +- org.apache.spark:spark-unsafe_2.12:jar:3.2.2:compile
> [INFO] |  +- org.apache.spark:spark-sketch_2.12:jar:3.2.2:compile
> [INFO] |  +- org.codehaus.janino:janino:jar:3.0.16:compile
> [INFO] |  +- org.codehaus.janino:commons-compiler:jar:3.0.16:compile
> [INFO] |  +- org.antlr:antlr4-runtime:jar:4.8:compile
> [INFO] |  +- javax.xml.bind:jaxb-api:jar:2.2.11:compile
> [INFO] |  +- commons-codec:commons-codec:jar:1.15:compile
> [INFO] |  +- com.univocity:univocity-parsers:jar:2.9.1:compile
> [INFO] |  +- org.apache.arrow:arrow-vector:jar:2.0.0:compile
> [INFO] |  |  +- org.apache.arrow:arrow-format:jar:2.0.0:compile
> [INFO] |  |  +- org.apache.arrow:arrow-memory-core:jar:2.0.0:compile
> [INFO] |  |  \- com.google.flatbuffers:flatbuffers-java:jar:1.9.0:compile
> [INFO] |  +- org.apache.arrow:arrow-memory-netty:jar:2.0.0:compile
> [INFO] |  \- org.spark-project.spark:unused:jar:1.0.0:compile
> [INFO] +- org.apache.spark:spark-avro_2.12:jar:3.2.2:compile
> [INFO] |  \- org.tukaani:xz:jar:1.8:compile
> [INFO] +- org.apache.avro:avro:jar:1.11.4:compile
> [INFO] |  +- com.fasterxml.jackson.core:jackson-core:jar:2.14.3:compile
> [INFO] |  +- com.fasterxml.jackson.core:jackson-databind:jar:2.14.3:compile
> [INFO] |  |  \- 
> com.fasterxml.jackson.core:jackson-annotations:jar:2.14.3:compile
> [INFO] |  \- org.apache.commons:commons-compress:jar:1.26.2:compile
> [INFO] +- org.apache.parquet:parquet-avro:jar:1.12.2:compile
> [INFO] |  +- org.apache.parquet:parquet-column:jar:1.12.2:compile
> [INFO] |  |  \- org.apache.parquet:parquet-encoding:jar:1.12.2:compile
> [INFO] |  +- org.apache.parquet:parquet-hadoop:jar:1.12.2:compile
> [INFO] |  |  +- org.apache.parquet:parquet-jackson:jar:1.12.2:compile
> [INFO] |  |  \- commons-pool:commons-pool:jar:1.6:compile
> [INFO] |  \- org.apache.parquet:parquet-format-structures:jar:1.12.2:compile
> [INFO] |     \- javax.annotation:javax.annotation-api:jar:1.3.2:compile
> [INFO] +- org.apache.parquet:parquet-common:jar:1.12.2:compile
> [INFO] |  \- org.apache.yetus:audience-annotations:jar:0.12.0:compile
> [INFO] +- info.picocli:picocli:jar:4.7.6:compile
> [INFO] +- org.slf4j:slf4j-api:jar:2.0.17:compile
> [INFO] +- org.slf4j:slf4j-log4j12:jar:1.7.30:compile
> [INFO] |  \- log4j:log4j:jar:1.2.17:compile
> [INFO] +- ch.qos.logback:logback-classic:jar:1.5.18:compile
> [INFO] |  \- ch.qos.logback:logback-core:jar:1.5.18:compile
> [INFO] +- com.google.inject:guice:jar:4.2.3:test
> [INFO] |  +- javax.inject:javax.inject:jar:1:test
> [INFO] |  +- aopalliance:aopalliance:jar:1.0:test
> [INFO] |  \- com.google.guava:guava:jar:27.1-jre:compile
> [INFO] |     +- com.google.guava:failureaccess:jar:1.0.1:compile
> [INFO] |     +- 
> com.google.guava:listenablefuture:jar:9999.0-empty-to-avoid-conflict-with-guava:compile
> [INFO] |     \- org.codehaus.mojo:animal-sniffer-annotations:jar:1.17:compile
> [INFO] +- io.vertx:vertx-junit5:jar:4.5.13:test
> [INFO] |  \- io.vertx:vertx-core:jar:4.5.13:compile
> [INFO] |     +- io.netty:netty-common:jar:4.1.118.Final:compile
> [INFO] |     +- io.netty:netty-buffer:jar:4.1.118.Final:compile
> [INFO] |     +- io.netty:netty-transport:jar:4.1.118.Final:compile
> [INFO] |     +- io.netty:netty-handler:jar:4.1.118.Final:compile
> [INFO] |     +- io.netty:netty-handler-proxy:jar:4.1.118.Final:compile
> [INFO] |     |  \- io.netty:netty-codec-socks:jar:4.1.118.Final:compile
> [INFO] |     +- io.netty:netty-codec-http:jar:4.1.118.Final:compile
> [INFO] |     +- io.netty:netty-codec-http2:jar:4.1.118.Final:compile
> [INFO] |     +- io.netty:netty-resolver:jar:4.1.118.Final:compile
> [INFO] |     \- io.netty:netty-resolver-dns:jar:4.1.118.Final:compile
> [INFO] |        \- io.netty:netty-codec-dns:jar:4.1.118.Final:compile
> [INFO] +- org.apache.cassandra:sidecar-server:jar:0.2-SNAPSHOT:test
> [INFO] |  +- io.vertx:vertx-web:jar:4.5.13:test
> [INFO] |  |  +- io.vertx:vertx-web-common:jar:4.5.13:compile
> [INFO] |  |  +- io.vertx:vertx-auth-common:jar:4.5.13:compile
> [INFO] |  |  \- io.vertx:vertx-bridge-common:jar:4.5.13:test
> [INFO] |  +- io.vertx:vertx-dropwizard-metrics:jar:4.5.13:test
> [INFO] |  +- io.vertx:vertx-web-client:jar:4.5.13:compile
> [INFO] |  |  \- io.vertx:vertx-uri-template:jar:4.5.13:compile
> [INFO] |  +- io.vertx:vertx-auth-jwt:jar:4.5.13:test
> [INFO] |  +- io.vertx:vertx-auth-oauth2:jar:4.5.13:test
> [INFO] |  +- com.datastax.cassandra:cassandra-driver-core:jar:3.11.3:test
> [INFO] |  |  +- com.github.jnr:jnr-ffi:jar:2.1.7:test
> [INFO] |  |  |  +- com.github.jnr:jffi:jar:1.2.16:test
> [INFO] |  |  |  +- com.github.jnr:jffi:jar:native:1.2.16:test
> [INFO] |  |  |  +- org.ow2.asm:asm:jar:5.0.3:test
> [INFO] |  |  |  +- org.ow2.asm:asm-commons:jar:5.0.3:test
> [INFO] |  |  |  +- org.ow2.asm:asm-analysis:jar:5.0.3:test
> [INFO] |  |  |  +- org.ow2.asm:asm-tree:jar:5.0.3:test
> [INFO] |  |  |  +- org.ow2.asm:asm-util:jar:5.0.3:test
> [INFO] |  |  |  \- com.github.jnr:jnr-x86asm:jar:1.0.2:test
> [INFO] |  |  \- com.github.jnr:jnr-posix:jar:3.0.44:test
> [INFO] |  |     \- com.github.jnr:jnr-constants:jar:0.9.9:test
> [INFO] |  +- com.github.ben-manes.caffeine:caffeine:jar:2.9.3:test
> [INFO] |  +- org.apache.commons:commons-lang3:jar:3.13.0:compile
> [INFO] |  +- 
> com.fasterxml.jackson.dataformat:jackson-dataformat-yaml:jar:2.14.3:test
> [INFO] |  |  \- org.yaml:snakeyaml:jar:1.33:test
> [INFO] |  +- software.amazon.awssdk:s3:jar:2.26.12:test
> [INFO] |  |  +- software.amazon.awssdk:aws-xml-protocol:jar:2.26.12:test
> [INFO] |  |  |  \- software.amazon.awssdk:aws-query-protocol:jar:2.26.12:test
> [INFO] |  |  +- software.amazon.awssdk:protocol-core:jar:2.26.12:test
> [INFO] |  |  +- software.amazon.awssdk:arns:jar:2.26.12:test
> [INFO] |  |  +- software.amazon.awssdk:profiles:jar:2.26.12:test
> [INFO] |  |  +- software.amazon.awssdk:crt-core:jar:2.26.12:test
> [INFO] |  |  +- software.amazon.awssdk:http-auth:jar:2.26.12:test
> [INFO] |  |  +- software.amazon.awssdk:identity-spi:jar:2.26.12:test
> [INFO] |  |  +- software.amazon.awssdk:http-auth-spi:jar:2.26.12:test
> [INFO] |  |  +- software.amazon.awssdk:http-auth-aws:jar:2.26.12:test
> [INFO] |  |  +- software.amazon.awssdk:checksums:jar:2.26.12:test
> [INFO] |  |  +- software.amazon.awssdk:checksums-spi:jar:2.26.12:test
> [INFO] |  |  +- software.amazon.awssdk:retries-spi:jar:2.26.12:test
> [INFO] |  |  +- software.amazon.awssdk:sdk-core:jar:2.26.12:test
> [INFO] |  |  |  \- software.amazon.awssdk:retries:jar:2.26.12:test
> [INFO] |  |  +- software.amazon.awssdk:auth:jar:2.26.12:test
> [INFO] |  |  |  \- software.amazon.eventstream:eventstream:jar:1.0.1:test
> [INFO] |  |  +- software.amazon.awssdk:http-client-spi:jar:2.26.12:test
> [INFO] |  |  +- software.amazon.awssdk:regions:jar:2.26.12:test
> [INFO] |  |  +- software.amazon.awssdk:annotations:jar:2.26.12:test
> [INFO] |  |  +- software.amazon.awssdk:utils:jar:2.26.12:test
> [INFO] |  |  +- software.amazon.awssdk:aws-core:jar:2.26.12:test
> [INFO] |  |  +- software.amazon.awssdk:metrics-spi:jar:2.26.12:test
> [INFO] |  |  +- software.amazon.awssdk:json-utils:jar:2.26.12:test
> [INFO] |  |  |  \- 
> software.amazon.awssdk:third-party-jackson-core:jar:2.26.12:test
> [INFO] |  |  +- software.amazon.awssdk:endpoints-spi:jar:2.26.12:test
> [INFO] |  |  \- software.amazon.awssdk:apache-client:jar:2.26.12:test
> [INFO] |  |     +- org.apache.httpcomponents:httpclient:jar:4.5.13:test
> [INFO] |  |     \- org.apache.httpcomponents:httpcore:jar:4.4.13:test
> [INFO] |  +- software.amazon.awssdk:netty-nio-client:jar:2.26.12:test
> [INFO] |  |  +- io.netty:netty-codec:jar:4.1.111.Final:compile
> [INFO] |  |  \- org.reactivestreams:reactive-streams:jar:1.0.4:test
> [INFO] |  +- io.netty:netty-transport-classes-epoll:jar:4.1.86.Final:test
> [INFO] |  |  \- 
> io.netty:netty-transport-native-unix-common:jar:4.1.86.Final:compile
> [INFO] |  +- io.netty:netty-tcnative-boringssl-static:jar:2.0.61.Final:runtime
> [INFO] |  |  +- io.netty:netty-tcnative-classes:jar:2.0.61.Final:runtime
> [INFO] |  |  \- 
> io.netty:netty-tcnative-boringssl-static:jar:windows-x86_64:2.0.61.Final:runtime
> [INFO] |  +- 
> io.netty:netty-tcnative-boringssl-static:jar:linux-x86_64:2.0.61.Final:runtime
> [INFO] |  +- 
> io.netty:netty-tcnative-boringssl-static:jar:osx-aarch_64:2.0.61.Final:runtime
> [INFO] |  +- 
> io.netty:netty-tcnative-boringssl-static:jar:linux-aarch_64:2.0.61.Final:runtime
> [INFO] |  +- 
> io.netty:netty-tcnative-boringssl-static:jar:osx-x86_64:2.0.61.Final:runtime
> [INFO] |  +- io.acryl:datahub-client:jar:0.15.0-3:test
> [INFO] |  +- org.apache.cassandra:sidecar-server-common:jar:0.2-SNAPSHOT:test
> [INFO] |  |  \- 
> org.apache.cassandra:sidecar-client-common:jar:0.2-SNAPSHOT:test
> [INFO] |  +- org.apache.cassandra:sidecar-adapters-base:jar:0.2-SNAPSHOT:test
> [INFO] |  +- 
> org.apache.cassandra:sidecar-adapters-cassandra41:jar:0.2-SNAPSHOT:test
> [INFO] |  +- 
> org.apache.cassandra:sidecar-vertx-auth-mtls:jar:0.2-SNAPSHOT:test
> [INFO] |  |  \- io.vertx:vertx-codegen:jar:4.5.13:test
> [INFO] |  \- org.apache.cassandra:sidecar-vertx-client:jar:0.2-SNAPSHOT:test
> [INFO] |     \- org.apache.cassandra:sidecar-client:jar:0.2-SNAPSHOT:test
> [INFO] +- org.apache.cassandra:sidecar-vertx-client-all:jar:0.2-SNAPSHOT:test
> [INFO] +- org.junit.jupiter:junit-jupiter-engine:jar:5.9.2:test
> [INFO] |  +- org.junit.platform:junit-platform-engine:jar:1.9.2:test
> [INFO] |  \- org.apiguardian:apiguardian-api:jar:1.1.2:test
> [INFO] +- org.junit.jupiter:junit-jupiter-params:jar:5.9.2:test
> [INFO] +- org.junit.jupiter:junit-jupiter-api:jar:5.9.2:test
> [INFO] |  +- org.opentest4j:opentest4j:jar:1.2.0:test
> [INFO] |  \- org.junit.platform:junit-platform-commons:jar:1.9.2:test
> [INFO] +- org.junit.vintage:junit-vintage-engine:jar:5.9.2:test
> [INFO] |  \- junit:junit:jar:4.13.2:test
> [INFO] |     \- org.hamcrest:hamcrest-core:jar:1.3:test
> [INFO] +- org.mockito:mockito-core:jar:2.23.4:test
> [INFO] |  +- net.bytebuddy:byte-buddy:jar:1.9.3:test
> [INFO] |  +- net.bytebuddy:byte-buddy-agent:jar:1.9.3:test
> [INFO] |  \- org.objenesis:objenesis:jar:2.6:compile
> [INFO] +- org.assertj:assertj-core:jar:3.26.3:test
> [INFO] \- com.google.guava:guava-testlib:jar:33.1.0-jre:test
> [INFO]    +- com.google.code.findbugs:jsr305:jar:3.0.2:compile
> [INFO]    +- org.checkerframework:checker-qual:jar:3.42.0:compile
> [INFO]    +- com.google.errorprone:error_prone_annotations:jar:2.26.1:compile
> [INFO]    \- com.google.j2objc:j2objc-annotations:jar:3.0.0:compile
> {code}
> dependencies in pom.xml: 
> https://gist.githubusercontent.com/smiklosovic/1e5c6c23dc8e2343b82242f690fb9a0d/raw/3bb80913c3d28408904ffb67745b36486988af42/gistfile1.txt
> We have been investigating this issue with Yifan and he reproduced, a 
> reproducer in gradle is this:
> {code}
> plugins {
>     id 'java'
> }
> group = 'org.example'
> version = '1.0-SNAPSHOT'
> repositories {
>     mavenLocal()
> }
> dependencies {
>     testImplementation 'org.apache.cassandra:sidecar-server:0.2-SNAPSHOT'
>     testImplementation 
> 'org.apache.cassandra:sidecar-vertx-client-all:0.2-SNAPSHOT'
>     testImplementation 'com.google.inject:guice:4.2.3'
>     testImplementation 'io.vertx:vertx-junit5:4.5.13'
>     testImplementation platform('org.junit:junit-bom:5.10.0')
>     testImplementation 'org.junit.jupiter:junit-jupiter'
> }
> test {
>     useJUnitPlatform()
> }
> {code}
> However, he reported that However, if removing sidecar-vertx-client-all, 
> server can start up.
> This is however still problematic, because for now cassandra-analytics-core 
> depends on analytics-sidecar-vertx-client-shaded which will cause same 
> problem.
> This basically renders re-using Sidecar in downstream projects when a 
> developer wants to start Sidecar programmatically impossible - when it is 
> used together with analytics library. 
> There might be projects as I am working on which are building on top of 
> analytics and what to test whole Sidecar + Cassandra combo in tests to test 
> whole solution but for now it seems to be impossible.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org


Reply via email to