Closed jorsol closed 3 years ago
The apache-client
and netty-nio-client
dependencies are optional in quarkus-amazon-s3
so I don't understand why you would need to exclude them. Do you have them when you do a mvn dependency:tree
? Could you explain what's going on?
Could you also paste your config (credentials excluded)?
Thanks!
They are marked as runtime
by s3 and for some reason I end up with those dependencies on the lib folder, that's why I exclude them (even on 1.11):
[INFO] --- maven-dependency-plugin:2.8:tree (default-cli) @ cm-api ---
[INFO] nf.postgresqlco:cm-api:jar:1.0.0-SNAPSHOT
[INFO] +- com.ongres.pgconfig:pgconfig-validator:jar:1.2.2:compile
[INFO] +- io.quarkus:quarkus-resteasy:jar:1.12.0.CR1:compile
[INFO] | +- io.quarkus:quarkus-vertx-http:jar:1.12.0.CR1:compile
[INFO] | | +- io.quarkus:quarkus-security-runtime-spi:jar:1.12.0.CR1:compile
[INFO] | | +- io.quarkus:quarkus-vertx-http-dev-console-runtime-spi:jar:1.12.0.CR1:compile
[INFO] | | +- io.quarkus.security:quarkus-security:jar:1.1.3.Final:compile
[INFO] | | | \- io.smallrye.reactive:mutiny:jar:0.13.0:compile
[INFO] | | +- io.quarkus:quarkus-vertx-core:jar:1.12.0.CR1:compile
[INFO] | | | \- io.vertx:vertx-core:jar:3.9.5:compile
[INFO] | | | +- io.netty:netty-handler-proxy:jar:4.1.49.Final:compile
[INFO] | | | | \- io.netty:netty-codec-socks:jar:4.1.49.Final:compile
[INFO] | | | \- io.netty:netty-resolver-dns:jar:4.1.49.Final:compile
[INFO] | | | \- io.netty:netty-codec-dns:jar:4.1.49.Final:compile
[INFO] | | \- io.vertx:vertx-web:jar:3.9.5:compile
[INFO] | | +- io.vertx:vertx-web-common:jar:3.9.5:compile
[INFO] | | +- io.vertx:vertx-auth-common:jar:3.9.5:compile
[INFO] | | \- io.vertx:vertx-bridge-common:jar:3.9.5:compile
[INFO] | \- io.quarkus:quarkus-resteasy-server-common:jar:1.12.0.CR1:compile
[INFO] | \- jakarta.validation:jakarta.validation-api:jar:2.0.2:compile
[INFO] +- io.quarkus:quarkus-resteasy-multipart:jar:1.12.0.CR1:compile
[INFO] | +- org.jboss.resteasy:resteasy-multipart-provider:jar:4.5.9.Final:compile
[INFO] | | +- org.jboss.resteasy:resteasy-core-spi:jar:4.5.9.Final:compile
[INFO] | | | \- org.jboss.spec.javax.ws.rs:jboss-jaxrs-api_2.1_spec:jar:2.0.1.Final:compile
[INFO] | | +- org.jboss.resteasy:resteasy-core:jar:4.5.9.Final:compile
[INFO] | | | \- com.ibm.async:asyncutil:jar:0.1.0:compile
[INFO] | | +- org.jboss.resteasy:resteasy-client:jar:4.5.9.Final:compile
[INFO] | | | +- org.jboss.resteasy:resteasy-client-api:jar:4.5.9.Final:compile
[INFO] | | | \- commons-io:commons-io:jar:2.8.0:compile
[INFO] | | +- org.jboss.resteasy:resteasy-jaxb-provider:jar:4.5.9.Final:compile
[INFO] | | | \- org.glassfish.jaxb:jaxb-runtime:jar:2.3.3-b02:compile
[INFO] | | | +- org.glassfish.jaxb:txw2:jar:2.3.3-b02:compile
[INFO] | | | \- com.sun.istack:istack-commons-runtime:jar:3.0.10:compile
[INFO] | | +- com.sun.mail:jakarta.mail:jar:1.6.4:compile
[INFO] | | +- org.apache.james:apache-mime4j-dom:jar:0.8.3:compile
[INFO] | | | \- org.apache.james:apache-mime4j-core:jar:0.8.3:compile
[INFO] | | \- org.apache.james:apache-mime4j-storage:jar:0.8.3:compile
[INFO] | \- org.jboss.logging:commons-logging-jboss-logging:jar:1.0.0.Final:compile
[INFO] +- io.quarkus:quarkus-junit5:jar:1.12.0.CR1:test
[INFO] | +- io.quarkus:quarkus-bootstrap-core:jar:1.12.0.CR1:test
[INFO] | | +- io.quarkus:quarkus-bootstrap-app-model:jar:1.12.0.CR1:test
[INFO] | | +- io.quarkus:quarkus-bootstrap-maven-resolver:jar:1.12.0.CR1:test
[INFO] | | | +- org.apache.maven:maven-embedder:jar:3.6.3:test
[INFO] | | | | +- org.apache.maven:maven-settings:jar:3.6.3:test
[INFO] | | | | +- org.apache.maven:maven-core:jar:3.6.3:test
[INFO] | | | | | +- org.apache.maven:maven-artifact:jar:3.6.3:test
[INFO] | | | | | \- org.codehaus.plexus:plexus-component-annotations:jar:2.1.0:test
[INFO] | | | | +- org.apache.maven:maven-plugin-api:jar:3.6.3:test
[INFO] | | | | +- org.apache.maven:maven-model:jar:3.6.3:test
[INFO] | | | | +- org.apache.maven:maven-model-builder:jar:3.6.3:test
[INFO] | | | | +- org.apache.maven:maven-builder-support:jar:3.6.3:test
[INFO] | | | | +- org.apache.maven.resolver:maven-resolver-api:jar:1.4.1:test
[INFO] | | | | +- org.apache.maven.resolver:maven-resolver-util:jar:1.4.1:test
[INFO] | | | | +- org.apache.maven.shared:maven-shared-utils:jar:3.2.1:test
[INFO] | | | | +- com.google.inject:guice:jar:no_aop:4.2.1:test
[INFO] | | | | +- org.codehaus.plexus:plexus-utils:jar:3.2.1:test
[INFO] | | | | +- org.codehaus.plexus:plexus-classworlds:jar:2.6.0:test
[INFO] | | | | \- commons-cli:commons-cli:jar:1.4:test
[INFO] | | | +- org.eclipse.sisu:org.eclipse.sisu.plexus:jar:0.3.4:test
[INFO] | | | +- org.apache.maven:maven-settings-builder:jar:3.6.3:test
[INFO] | | | | +- org.codehaus.plexus:plexus-interpolation:jar:1.25:test
[INFO] | | | | \- org.sonatype.plexus:plexus-sec-dispatcher:jar:1.4:test
[INFO] | | | | \- org.sonatype.plexus:plexus-cipher:jar:1.4:test
[INFO] | | | +- org.apache.maven:maven-resolver-provider:jar:3.6.3:test
[INFO] | | | | +- org.apache.maven:maven-repository-metadata:jar:3.6.3:test
[INFO] | | | | +- org.apache.maven.resolver:maven-resolver-spi:jar:1.4.1:test
[INFO] | | | | \- org.apache.maven.resolver:maven-resolver-impl:jar:1.4.1:test
[INFO] | | | +- org.apache.maven.resolver:maven-resolver-connector-basic:jar:1.4.1:test
[INFO] | | | +- org.apache.maven.resolver:maven-resolver-transport-wagon:jar:1.4.1:test
[INFO] | | | +- org.apache.maven.wagon:wagon-http:jar:3.3.4:test
[INFO] | | | | +- org.apache.maven.wagon:wagon-http-shared:jar:3.3.4:test
[INFO] | | | | | \- org.jsoup:jsoup:jar:1.12.1:test
[INFO] | | | | \- org.apache.maven.wagon:wagon-provider-api:jar:3.3.4:test
[INFO] | | | \- org.apache.maven.wagon:wagon-file:jar:3.3.4:test
[INFO] | | +- io.quarkus:quarkus-bootstrap-gradle-resolver:jar:1.12.0.CR1:test
[INFO] | | \- io.smallrye.common:smallrye-common-io:jar:1.5.0:compile
[INFO] | +- org.eclipse.sisu:org.eclipse.sisu.inject:jar:0.3.4:test
[INFO] | +- io.quarkus:quarkus-test-common:jar:1.12.0.CR1:test
[INFO] | | +- io.quarkus:quarkus-core-deployment:jar:1.12.0.CR1:test
[INFO] | | | +- io.quarkus.gizmo:gizmo:jar:1.0.6.Final:test
[INFO] | | | | \- org.ow2.asm:asm-util:jar:9.0:test
[INFO] | | | | +- org.ow2.asm:asm-tree:jar:9.0:test
[INFO] | | | | \- org.ow2.asm:asm-analysis:jar:9.0:test
[INFO] | | | +- io.quarkus:quarkus-class-change-agent:jar:1.12.0.CR1:test
[INFO] | | | +- io.quarkus:quarkus-devtools-utilities:jar:1.12.0.CR1:test
[INFO] | | | \- io.quarkus:quarkus-builder:jar:1.12.0.CR1:test
[INFO] | | +- io.quarkus:quarkus-jsonp-deployment:jar:1.12.0.CR1:test
[INFO] | | \- org.jboss:jandex:jar:2.2.3.Final:compile
[INFO] | +- org.junit.jupiter:junit-jupiter:jar:5.7.1:test
[INFO] | | +- org.junit.jupiter:junit-jupiter-params:jar:5.7.1:test
[INFO] | | \- org.junit.jupiter:junit-jupiter-engine:jar:5.7.1:test
[INFO] | | \- org.junit.platform:junit-platform-engine:jar:1.7.1:test
[INFO] | +- io.quarkus:quarkus-core:jar:1.12.0.CR1:compile
[INFO] | | +- jakarta.enterprise:jakarta.enterprise.cdi-api:jar:2.0.2:compile
[INFO] | | | \- jakarta.el:jakarta.el-api:jar:3.0.3:compile
[INFO] | | +- jakarta.inject:jakarta.inject-api:jar:1.0:compile
[INFO] | | +- io.quarkus:quarkus-ide-launcher:jar:1.12.0.CR1:compile
[INFO] | | +- io.quarkus:quarkus-development-mode-spi:jar:1.12.0.CR1:compile
[INFO] | | +- io.smallrye.config:smallrye-config:jar:1.10.2:compile
[INFO] | | | +- io.smallrye.config:smallrye-config-common:jar:1.10.2:compile
[INFO] | | | +- io.smallrye.common:smallrye-common-expression:jar:1.5.0:compile
[INFO] | | | | \- io.smallrye.common:smallrye-common-function:jar:1.5.0:compile
[INFO] | | | +- io.smallrye.common:smallrye-common-constraint:jar:1.5.0:compile
[INFO] | | | \- io.smallrye.common:smallrye-common-classloader:jar:1.5.0:compile
[INFO] | | +- org.jboss.logmanager:jboss-logmanager-embedded:jar:1.0.6:compile
[INFO] | | +- org.jboss.logging:jboss-logging-annotations:jar:2.2.0.Final:compile
[INFO] | | +- org.jboss.threads:jboss-threads:jar:3.2.0.Final:compile
[INFO] | | +- org.slf4j:slf4j-api:jar:1.7.30:compile
[INFO] | | +- org.jboss.slf4j:slf4j-jboss-logmanager:jar:1.1.0.Final:compile
[INFO] | | +- org.graalvm.sdk:graal-sdk:jar:21.0.0:compile
[INFO] | | +- org.wildfly.common:wildfly-common:jar:1.5.4.Final-format-001:compile
[INFO] | | \- io.quarkus:quarkus-bootstrap-runner:jar:1.12.0.CR1:compile
[INFO] | \- com.thoughtworks.xstream:xstream:jar:1.4.15:test
[INFO] | +- xmlpull:xmlpull:jar:1.1.3.1:test
[INFO] | \- xpp3:xpp3_min:jar:1.1.4c:test
[INFO] +- io.rest-assured:rest-assured:jar:4.3.3:test
[INFO] | +- org.codehaus.groovy:groovy:jar:3.0.7:test
[INFO] | +- org.codehaus.groovy:groovy-xml:jar:3.0.7:test
[INFO] | +- org.apache.httpcomponents:httpclient:jar:4.5.13:compile
[INFO] | | +- org.apache.httpcomponents:httpcore:jar:4.4.14:compile
[INFO] | | \- commons-codec:commons-codec:jar:1.14:compile
[INFO] | +- org.apache.httpcomponents:httpmime:jar:4.5.13:test
[INFO] | +- org.hamcrest:hamcrest:jar:2.1:test
[INFO] | +- org.ccil.cowan.tagsoup:tagsoup:jar:1.2.1:test
[INFO] | +- io.rest-assured:json-path:jar:4.3.3:test
[INFO] | | +- org.codehaus.groovy:groovy-json:jar:3.0.7:test
[INFO] | | \- io.rest-assured:rest-assured-common:jar:4.3.3:test
[INFO] | \- io.rest-assured:xml-path:jar:4.3.3:test
[INFO] | +- org.apache.commons:commons-lang3:jar:3.11:test
[INFO] | +- jakarta.xml.bind:jakarta.xml.bind-api:jar:2.3.3:test
[INFO] | | \- jakarta.activation:jakarta.activation-api:jar:1.2.1:compile
[INFO] | \- com.sun.xml.bind:jaxb-impl:jar:2.3.3:test
[INFO] +- io.quarkus:quarkus-flyway:jar:1.12.0.CR1:compile
[INFO] | +- org.flywaydb:flyway-core:jar:7.5.2:compile
[INFO] | +- io.quarkus:quarkus-agroal:jar:1.12.0.CR1:compile
[INFO] | | +- io.quarkus:quarkus-datasource:jar:1.12.0.CR1:compile
[INFO] | | +- org.jboss.narayana.jta:narayana-jta:jar:5.10.6.Final:compile
[INFO] | | | +- org.jboss:jboss-transaction-spi:jar:7.6.0.Final:compile
[INFO] | | | \- org.jboss.spec.javax.resource:jboss-connector-api_1.7_spec:jar:1.0.0.Final:compile
[INFO] | | +- org.jboss.narayana.jts:narayana-jts-integration:jar:5.10.6.Final:compile
[INFO] | | +- jakarta.transaction:jakarta.transaction-api:jar:1.3.3:compile
[INFO] | | +- io.agroal:agroal-api:jar:1.9:compile
[INFO] | | +- io.agroal:agroal-narayana:jar:1.9:compile
[INFO] | | +- io.agroal:agroal-pool:jar:1.9:compile
[INFO] | | \- io.quarkus:quarkus-credentials:jar:1.12.0.CR1:compile
[INFO] | +- io.quarkus:quarkus-narayana-jta:jar:1.12.0.CR1:compile
[INFO] | | +- io.quarkus:quarkus-mutiny:jar:1.12.0.CR1:compile
[INFO] | | | +- io.quarkus:quarkus-smallrye-context-propagation:jar:1.12.0.CR1:compile
[INFO] | | | | \- io.smallrye:smallrye-context-propagation:jar:1.1.0:compile
[INFO] | | | | +- io.smallrye:smallrye-context-propagation-api:jar:1.1.0:compile
[INFO] | | | | \- io.smallrye:smallrye-context-propagation-storage:jar:1.1.0:compile
[INFO] | | | \- io.smallrye.reactive:mutiny-context-propagation:jar:0.13.0:compile
[INFO] | | +- io.smallrye:smallrye-context-propagation-jta:jar:1.1.0:compile
[INFO] | | +- io.smallrye.reactive:smallrye-reactive-converter-api:jar:1.4.0:compile
[INFO] | | \- io.smallrye.reactive:smallrye-reactive-converter-mutiny:jar:1.4.0:compile
[INFO] | \- io.quarkus:quarkus-datasource-common:jar:1.12.0.CR1:compile
[INFO] +- io.quarkus:quarkus-hibernate-validator:jar:1.12.0.CR1:compile
[INFO] | +- io.quarkus:quarkus-arc:jar:1.12.0.CR1:compile
[INFO] | | +- io.quarkus.arc:arc:jar:1.12.0.CR1:compile
[INFO] | | \- org.eclipse.microprofile.context-propagation:microprofile-context-propagation-api:jar:1.0.1:compile
[INFO] | +- org.hibernate.validator:hibernate-validator:jar:6.2.0.Final:compile
[INFO] | | \- com.fasterxml:classmate:jar:1.3.4:compile
[INFO] | \- org.glassfish:jakarta.el:jar:3.0.3:compile
[INFO] +- io.quarkus:quarkus-rest-client:jar:1.12.0.CR1:compile
[INFO] | +- io.quarkus:quarkus-resteasy-common:jar:1.12.0.CR1:compile
[INFO] | | \- com.sun.activation:jakarta.activation:jar:1.2.1:compile
[INFO] | +- org.jboss.resteasy:resteasy-client-microprofile:jar:4.5.9.Final:compile
[INFO] | | \- org.eclipse.microprofile.rest.client:microprofile-rest-client-api:jar:1.4.1:compile
[INFO] | +- jakarta.interceptor:jakarta.interceptor-api:jar:1.2.5:compile
[INFO] | \- org.apache.httpcomponents:httpasyncclient:jar:4.1.4:compile
[INFO] | \- org.apache.httpcomponents:httpcore-nio:jar:4.4.14:compile
[INFO] +- io.quarkus:quarkus-resteasy-jackson:jar:1.12.0.CR1:compile
[INFO] | +- io.quarkus:quarkus-jackson:jar:1.12.0.CR1:compile
[INFO] | | \- com.fasterxml.jackson.module:jackson-module-parameter-names:jar:2.12.1:compile
[INFO] | +- org.jboss.resteasy:resteasy-jackson2-provider:jar:4.5.9.Final:compile
[INFO] | | +- com.fasterxml.jackson.jaxrs:jackson-jaxrs-json-provider:jar:2.12.1:compile
[INFO] | | | +- com.fasterxml.jackson.jaxrs:jackson-jaxrs-base:jar:2.12.1:compile
[INFO] | | | \- com.fasterxml.jackson.module:jackson-module-jaxb-annotations:jar:2.12.1:compile
[INFO] | | \- com.github.java-json-tools:json-patch:jar:1.13:compile
[INFO] | | +- com.github.java-json-tools:msg-simple:jar:1.2:compile
[INFO] | | | \- com.github.java-json-tools:btf:jar:1.3:compile
[INFO] | | \- com.github.java-json-tools:jackson-coreutils:jar:2.0:compile
[INFO] | \- org.jboss.spec.javax.xml.bind:jboss-jaxb-api_2.3_spec:jar:2.0.0.Final:compile
[INFO] +- io.quarkus:quarkus-smallrye-openapi:jar:1.12.0.CR1:compile
[INFO] | +- io.smallrye:smallrye-open-api-core:jar:2.0.20:compile
[INFO] | | +- org.eclipse.microprofile.openapi:microprofile-openapi-api:jar:1.1.2:compile
[INFO] | | \- com.fasterxml.jackson.dataformat:jackson-dataformat-yaml:jar:2.12.1:compile
[INFO] | | \- org.yaml:snakeyaml:jar:1.27:compile
[INFO] | \- io.quarkus:quarkus-swagger-ui:jar:1.12.0.CR1:compile
[INFO] +- io.quarkus:quarkus-smallrye-jwt:jar:1.12.0.CR1:compile
[INFO] | +- io.smallrye:smallrye-jwt:jar:2.4.3:compile
[INFO] | +- jakarta.annotation:jakarta.annotation-api:jar:1.3.5:compile
[INFO] | +- io.quarkus:quarkus-vertx-web:jar:1.12.0.CR1:compile
[INFO] | | +- io.quarkus:quarkus-vertx:jar:1.12.0.CR1:compile
[INFO] | | | \- io.smallrye.reactive:smallrye-mutiny-vertx-core:jar:1.4.0:compile
[INFO] | | | +- io.smallrye.reactive:smallrye-mutiny-vertx-runtime:jar:1.4.0:compile
[INFO] | | | \- io.smallrye.reactive:vertx-mutiny-generator:jar:1.4.0:compile
[INFO] | | | \- io.vertx:vertx-codegen:jar:3.9.5:compile
[INFO] | | | \- org.mvel:mvel2:jar:2.3.1.Final:compile
[INFO] | | \- io.smallrye.common:smallrye-common-annotation:jar:1.5.0:compile
[INFO] | +- io.quarkus:quarkus-security:jar:1.12.0.CR1:compile
[INFO] | +- io.quarkus:quarkus-smallrye-jwt-build:jar:1.12.0.CR1:compile
[INFO] | \- io.quarkus:quarkus-jsonp:jar:1.12.0.CR1:compile
[INFO] | \- org.glassfish:jakarta.json:jar:1.1.6:compile
[INFO] +- io.quarkus:quarkus-smallrye-health:jar:1.12.0.CR1:compile
[INFO] | +- io.smallrye:smallrye-health:jar:2.2.5:compile
[INFO] | | +- org.eclipse.microprofile.health:microprofile-health-api:jar:2.2:compile
[INFO] | | \- io.smallrye:smallrye-health-api:jar:2.2.5:compile
[INFO] | \- io.smallrye:smallrye-health-provided-checks:jar:2.2.5:compile
[INFO] +- io.quarkus:quarkus-jdbc-postgresql:jar:1.12.0.CR1:compile
[INFO] | \- org.postgresql:postgresql:jar:42.2.18:compile
[INFO] +- io.quarkus:quarkus-kubernetes:jar:1.12.0.CR1:compile
[INFO] | \- io.quarkus:quarkus-kubernetes-client-internal:jar:1.12.0.CR1:compile
[INFO] +- io.quarkus:quarkus-cache:jar:1.12.0.CR1:compile
[INFO] | \- io.quarkus:quarkus-caffeine:jar:1.12.0.CR1:compile
[INFO] | \- com.github.ben-manes.caffeine:caffeine:jar:2.8.8:compile
[INFO] +- io.quarkus:quarkus-container-image-jib:jar:1.12.0.CR1:compile
[INFO] +- io.netty:netty-transport-native-epoll:jar:linux-x86_64:4.1.49.Final:compile
[INFO] | +- io.netty:netty-common:jar:4.1.49.Final:compile
[INFO] | +- io.netty:netty-buffer:jar:4.1.49.Final:compile
[INFO] | +- io.netty:netty-transport:jar:4.1.49.Final:compile
[INFO] | | \- io.netty:netty-resolver:jar:4.1.49.Final:compile
[INFO] | \- io.netty:netty-transport-native-unix-common:jar:4.1.49.Final:compile
[INFO] +- io.quarkus:quarkus-amazon-s3:jar:1.12.0.CR1:compile
[INFO] | +- io.quarkus:quarkus-netty:jar:1.12.0.CR1:compile
[INFO] | | +- io.netty:netty-codec:jar:4.1.49.Final:compile
[INFO] | | \- io.netty:netty-handler:jar:4.1.49.Final:compile
[INFO] | +- io.quarkus:quarkus-amazon-common:jar:1.12.0.CR1:compile
[INFO] | | +- software.amazon.awssdk:sdk-core:jar:2.15.79:compile
[INFO] | | +- software.amazon.awssdk:aws-core:jar:2.15.79:compile
[INFO] | | | \- software.amazon.eventstream:eventstream:jar:1.0.1:compile
[INFO] | | +- software.amazon.awssdk:regions:jar:2.15.79:compile
[INFO] | | \- software.amazon.awssdk:auth:jar:2.15.79:compile
[INFO] | \- software.amazon.awssdk:s3:jar:2.15.79:compile
[INFO] | +- software.amazon.awssdk:aws-xml-protocol:jar:2.15.79:compile
[INFO] | | \- software.amazon.awssdk:aws-query-protocol:jar:2.15.79:compile
[INFO] | +- software.amazon.awssdk:protocol-core:jar:2.15.79:compile
[INFO] | +- software.amazon.awssdk:arns:jar:2.15.79:compile
[INFO] | +- software.amazon.awssdk:profiles:jar:2.15.79:compile
[INFO] | +- software.amazon.awssdk:metrics-spi:jar:2.15.79:compile
[INFO] | +- software.amazon.awssdk:apache-client:jar:2.15.79:runtime
[INFO] | \- software.amazon.awssdk:netty-nio-client:jar:2.15.79:runtime
[INFO] | +- io.netty:netty-codec-http:jar:4.1.49.Final:compile
[INFO] | +- io.netty:netty-codec-http2:jar:4.1.49.Final:compile
[INFO] | \- com.typesafe.netty:netty-reactive-streams-http:jar:2.0.4:runtime
[INFO] | \- com.typesafe.netty:netty-reactive-streams:jar:2.0.4:runtime
[INFO] +- software.amazon.awssdk:url-connection-client:jar:2.15.79:compile
[INFO] | +- software.amazon.awssdk:utils:jar:2.15.79:compile
[INFO] | +- software.amazon.awssdk:annotations:jar:2.15.79:compile
[INFO] | \- software.amazon.awssdk:http-client-spi:jar:2.15.79:compile
[INFO] +- io.opentelemetry:opentelemetry-api:jar:0.12.0:compile
[INFO] | \- io.opentelemetry:opentelemetry-context:jar:0.12.0:compile
[INFO] +- io.opentelemetry:opentelemetry-sdk:jar:0.12.0:compile
[INFO] | +- io.opentelemetry:opentelemetry-sdk-common:jar:0.12.0:compile
[INFO] | +- io.opentelemetry:opentelemetry-sdk-metrics:jar:0.12.0:compile
[INFO] | \- io.opentelemetry:opentelemetry-sdk-trace:jar:0.12.0:compile
[INFO] +- io.opentelemetry:opentelemetry-exporter-jaeger:jar:0.12.0:compile
[INFO] | +- io.grpc:grpc-api:jar:1.34.0:compile
[INFO] | | +- io.grpc:grpc-context:jar:1.34.0:compile
[INFO] | | \- org.codehaus.mojo:animal-sniffer-annotations:jar:1.18:runtime
[INFO] | +- io.opentelemetry:opentelemetry-sdk-extension-otproto:jar:0.12.0:runtime
[INFO] | | \- io.opentelemetry:opentelemetry-proto:jar:0.12.0:runtime
[INFO] | +- io.grpc:grpc-protobuf:jar:1.34.0:runtime
[INFO] | | +- com.google.api.grpc:proto-google-common-protos:jar:1.17.0:runtime
[INFO] | | \- io.grpc:grpc-protobuf-lite:jar:1.34.0:runtime
[INFO] | +- io.grpc:grpc-stub:jar:1.34.0:runtime
[INFO] | +- com.google.protobuf:protobuf-java:jar:3.14.0:runtime
[INFO] | \- com.google.protobuf:protobuf-java-util:jar:3.14.0:runtime
[INFO] | \- com.google.code.gson:gson:jar:2.8.6:runtime
[INFO] +- io.grpc:grpc-netty-shaded:jar:1.34.0:compile
[INFO] | \- io.grpc:grpc-core:jar:1.34.0:compile
[INFO] | +- com.google.android:annotations:jar:4.1.1.4:runtime
[INFO] | \- io.perfmark:perfmark-api:jar:0.19.0:runtime
[INFO] +- org.jooq:jooq:jar:3.14.6:compile
[INFO] | \- org.reactivestreams:reactive-streams:jar:1.0.3:compile
[INFO] +- org.jooq:jool:jar:0.9.14:compile
[INFO] +- org.antlr:antlr4-runtime:jar:4.8:compile
[INFO] +- org.immutables:value:jar:2.8.8:compile
[INFO] +- org.zalando:problem:jar:0.25.0:compile
[INFO] +- org.apiguardian:apiguardian-api:jar:1.1.1:compile
[INFO] +- org.zalando:jackson-datatype-problem:jar:0.25.0:compile
[INFO] | \- com.fasterxml.jackson.core:jackson-databind:jar:2.12.1:compile
[INFO] +- com.fasterxml.jackson.datatype:jackson-datatype-jdk8:jar:2.12.1:compile
[INFO] | \- com.fasterxml.jackson.core:jackson-core:jar:2.12.1:compile
[INFO] +- com.fasterxml.jackson.datatype:jackson-datatype-jsr310:jar:2.12.1:compile
[INFO] | \- com.fasterxml.jackson.core:jackson-annotations:jar:2.12.1:compile
[INFO] +- com.fasterxml.jackson.datatype:jackson-datatype-guava:jar:2.12.1:compile
[INFO] +- com.google.guava:guava:jar:30.1-jre:compile
[INFO] +- com.google.guava:failureaccess:jar:1.0.1:compile
[INFO] +- org.eclipse.jdt:org.eclipse.jdt.annotation:jar:2.2.600:compile
[INFO] +- org.jetbrains:annotations:jar:20.1.0:compile
[INFO] +- io.smallrye:smallrye-jwt-build:jar:2.4.3:test
[INFO] | +- org.eclipse.microprofile.config:microprofile-config-api:jar:1.4:compile
[INFO] | +- org.eclipse.microprofile.jwt:microprofile-jwt-auth-api:jar:1.1.1:compile
[INFO] | +- org.bitbucket.b_c:jose4j:jar:0.7.6:compile
[INFO] | +- io.smallrye:smallrye-jwt-common:jar:2.4.3:compile
[INFO] | \- org.jboss.logging:jboss-logging:jar:3.4.1.Final:compile
[INFO] +- org.testcontainers:junit-jupiter:jar:1.15.1:test
[INFO] | +- org.testcontainers:testcontainers:jar:1.15.1:test
[INFO] | | +- org.apache.commons:commons-compress:jar:1.20:test
[INFO] | | +- org.rnorth.duct-tape:duct-tape:jar:1.0.8:test
[INFO] | | +- org.rnorth.visible-assertions:visible-assertions:jar:2.1.2:test
[INFO] | | | \- net.java.dev.jna:jna:jar:5.3.1:test
[INFO] | | +- com.github.docker-java:docker-java-api:jar:3.2.7:test
[INFO] | | \- com.github.docker-java:docker-java-transport-zerodep:jar:3.2.7:test
[INFO] | | \- com.github.docker-java:docker-java-transport:jar:3.2.7:test
[INFO] | \- org.junit.jupiter:junit-jupiter-api:jar:5.7.1:test
[INFO] | +- org.opentest4j:opentest4j:jar:1.2.0:test
[INFO] | \- org.junit.platform:junit-platform-commons:jar:1.7.1:test
[INFO] +- org.testcontainers:postgresql:jar:1.15.1:test
[INFO] | \- org.testcontainers:jdbc:jar:1.15.1:test
[INFO] | \- org.testcontainers:database-commons:jar:1.15.1:test
[INFO] +- org.skyscreamer:jsonassert:jar:1.5.0:test
[INFO] | \- com.vaadin.external.google:android-json:jar:0.0.20131108.vaadin1:test
[INFO] +- com.google.truth:truth:jar:1.1.2:test
[INFO] | +- org.checkerframework:checker-qual:jar:2.5.2:test
[INFO] | +- junit:junit:jar:4.13.1:test
[INFO] | | \- org.hamcrest:hamcrest-core:jar:1.3:test
[INFO] | +- com.google.auto.value:auto-value-annotations:jar:1.7.4:test
[INFO] | +- com.google.errorprone:error_prone_annotations:jar:2.2.0:compile
[INFO] | \- org.ow2.asm:asm:jar:9.0:test
[INFO] +- com.google.truth.extensions:truth-java8-extension:jar:1.1.2:test
[INFO] \- org.jacoco:org.jacoco.agent:jar:runtime:0.8.6:test
Anyway, I don't have set up the quarkus.s3.sync-client.type
if you ask, so the default url
should apply. The weird thing is that for some reason is jumping into the apache
type.
Any chance you could prepare me a small Maven reproducer? I don't need it to really connect to S3, I would just like to experiment properly with your setup and see how things are initialized.
Thanks!
Ok, here you have it: https://github.com/jorsol/quarkus-bug-15014
You can try to remove the exclusions too.
Thanks, I will have a look later today.
I had a look. I think it was working before because the Apache classes were leaking in the deployment phase and it's not the case anymore. So it looks like a side effect of an unrelated bugfix.
Fixing it will require some reorganization of the code. I'll try to come up with a fix before the Final.
Thanks,
BTW have you noticed the leak of apache-client
and netty-nio-client
dependencies in the quarkus-app/lib/main? This is one of the reasons I have to exclude those dependencies explicitly, the <optional>
is not enforced since is pulled from the main dependency of the service as a runtime
dependency.
So one possible "fix" is to exclude them: https://github.com/quarkusio/quarkus/pull/15046
Yeah, I have already committed a change to exclude them in my tree. They should have been optional all along.
Now I need to figure out how to get the recorder working properly.
Yeah, I have already committed a change to exclude them in my tree. They should have been optional all along.
Great, so closing my PR then.
@jorsol could you have a look at https://github.com/quarkusio/quarkus/pull/15087 and give it a try?
https://github.com/quarkusio/quarkus/blob/master/CONTRIBUTING.md#checking-an-issue-is-fixed-in-master might be useful, just check my branch instead of master.
I'm building the artifacts of 1.12.0.Final on Wednesday so, if we could iterate tomorrow, that would be perfect.
@jorsol any feedback? Clock is ticking :)
@gsmet sorry, I haven't had time to test it yet, will start testing it right now, give me a couple of hours, although I'm confident it will work :)
@gsmet It works for my use case, the reproducer works as expected. Thanks!
Just a small note, url-connection-client
and apache-client
are mutually exclusive, so having this should fail at build time.
<dependency>
<groupId>software.amazon.awssdk</groupId>
<artifactId>url-connection-client</artifactId>
</dependency>
<dependency>
<groupId>software.amazon.awssdk</groupId>
<artifactId>apache-client</artifactId>
</dependency>
Right now this fails at runtime with: software.amazon.awssdk.core.exception.SdkClientException: Multiple HTTP implementations were found on the classpath. ...
.
So it would be nice to detect this at build time too, possibly by checking the implementation of quarkus.s3.sync-client.type
and then check if the other implementation is present at build time too and fail properly.
So it would be nice to detect this at build time too, possibly by checking the implementation of quarkus.s3.sync-client.type and then check if the other implementation is present at build time too and fail properly.
So sure... feel free to open an enhancement request. Probably a good issue for a new contributor.
Describe the bug I'm using the
url-connection-client
with S3, declaring the dependencies as:When I try to update the version from Quarkus 1.11.2.Final to 1.12.0.CR1 the build fails with the following stack trace:
If I don't exclude the
apache-client
dependency, and I have tests that create anS3Client
mock , the tests fails with:Multiple HTTP implementations were found on the classpath. To avoid non-deterministic loading implementations, please explicitly provide an HTTP client via the client builders, set the software.amazon.awssdk.http.service.impl system property with the FQCN of the HTTP service to use as the default, or remove all but one HTTP implementation from the classpath
Now if I set the system property on surefire configuration like:
<software.amazon.awssdk.http.service.impl>software.amazon.awssdk.http.urlconnection.UrlConnectionSdkHttpService</software.amazon.awssdk.http.service.impl>
the test works and builds successfully, but I end up with theapache-client
also in the lib, and is incorrect for the Multiple HTTP implementation found on classpath, so the problem is from the build part of Quarkus.Expected behavior Run normally as before (this release doesn't seem to have any breaking change in the S3 extension).
Actual behavior For some reason, it looks like the method
configureSyncApacheHttpClient
is called, when it should call theconfigureSyncUrlConnectionHttpClient
instead. https://github.com/quarkusio/quarkus/blob/16326d6b9d4c5d62015827d42c34ac4c03f272f4/extensions/amazon-services/common/runtime/src/main/java/io/quarkus/amazon/common/runtime/AmazonClientTransportRecorder.java#L94To Reproduce I don't have a small reproducer but happy to provide more feedback as needed.
Environment (please complete the following information):
uname -a
orver
: Linux 5.8.0-43-generic x86_64java -version
: openjdk version "15.0.2" 2021-01-19mvnw --version
orgradlew --version
): 3.6.3