quarkusio / quarkus

Quarkus: Supersonic Subatomic Java.
https://quarkus.io
Apache License 2.0
13.82k stars 2.69k forks source link

Problems running CDI-lite TCK tests using byte code transformed dependencies #18690

Closed starksm64 closed 2 years ago

starksm64 commented 3 years ago

Describe the bug

This is more of a note to track potential issues with EE9+ support prior to actually updating the Quarkus dependencies to the EE9+ jarkata.* package APIs.

Following the approach that Wildfly has taken for its EE9 preview to transform the artifacts with EE8 dependencies into EE9 dependencies using byte code transformation using the eclipse transformer, I created a TCK runner project to test the Quarkus ArC implementation against an early candidate of the EE10 CDI-lite TCK.

That project uses versions of the io.quarkus:quarkus-arc dependencies that have been transformed into artifacts with an ee9 qualifier. The mvn dependency:tree of the project is the following:

[INFO] --- maven-dependency-plugin:2.8:tree (default-cli) @ arc-tck-runner ---
[INFO] io.quarkus.arc.tck:arc-tck-runner:jar:1.0.0-SNAPSHOT
[INFO] +- org.jboss.arquillian.container:arquillian-container-test-api:jar:1.7.0.Alpha10:compile
[INFO] |  +- org.jboss.shrinkwrap:shrinkwrap-api:jar:1.2.6:compile
[INFO] |  \- org.jboss.shrinkwrap.descriptors:shrinkwrap-descriptors-api-base:jar:2.0.0:compile
[INFO] +- org.jboss.arquillian.testng:arquillian-testng-core:jar:1.7.0.Alpha10:compile
[INFO] |  \- org.jboss.arquillian.test:arquillian-test-spi:jar:1.6.0.Final:compile
[INFO] |     +- org.jboss.arquillian.core:arquillian-core-spi:jar:1.6.0.Final:compile
[INFO] |     |  \- org.jboss.arquillian.core:arquillian-core-api:jar:1.6.0.Final:compile
[INFO] |     \- org.jboss.arquillian.test:arquillian-test-api:jar:1.6.0.Final:compile
[INFO] +- org.apache.maven.plugins:maven-surefire-plugin:jar:3.0.0-M5:compile
[INFO] |  \- org.apache.maven.surefire:maven-surefire-common:jar:3.0.0-M5:compile
[INFO] |     +- org.apache.maven.surefire:surefire-api:jar:3.0.0-M5:compile
[INFO] |     |  \- org.apache.maven.surefire:surefire-logger-api:jar:3.0.0-M5:compile
[INFO] |     +- org.apache.maven.surefire:surefire-extensions-api:jar:3.0.0-M5:compile
[INFO] |     +- org.apache.maven.surefire:surefire-booter:jar:3.0.0-M5:compile
[INFO] |     |  \- org.apache.maven.surefire:surefire-extensions-spi:jar:3.0.0-M5:compile
[INFO] |     +- org.apache.maven:maven-toolchain:jar:3.0-alpha-2:compile
[INFO] |     +- org.apache.maven.shared:maven-artifact-transfer:jar:0.10.0:compile
[INFO] |     |  \- org.apache.maven.shared:maven-common-artifact-filters:jar:3.0.1:compile
[INFO] |     |     \- org.sonatype.sisu:sisu-inject-plexus:jar:1.4.2:compile
[INFO] |     |        \- org.sonatype.sisu:sisu-inject-bean:jar:1.4.2:compile
[INFO] |     |           \- org.sonatype.sisu:sisu-guice:jar:noaop:2.1.7:compile
[INFO] |     +- org.codehaus.plexus:plexus-java:jar:1.0.5:compile
[INFO] |     |  \- com.thoughtworks.qdox:qdox:jar:2.0-M9:compile
[INFO] |     \- org.apache.maven.surefire:surefire-shared-utils:jar:3.0.0-M4:compile
[INFO] +- jakarta.enterprise:jakarta.enterprise.cdi-api:jar:3.0.0:compile
[INFO] |  \- jakarta.el:jakarta.el-api:jar:4.0.0:compile
[INFO] +- jakarta.annotation:jakarta.annotation-api:jar:2.0.0:compile
[INFO] +- jakarta.interceptor:jakarta.interceptor-api:jar:2.0.0:compile
[INFO] +- jakarta.inject:jakarta.inject-api:jar:2.0.0:compile
[INFO] +- jakarta.enterprise:cdi-tck-core-impl:jar:4.1.1-20210621-lite:compile
[INFO] |  +- jakarta.enterprise:cdi-tck-api:jar:4.1.1-20210621-lite:compile
[INFO] |  +- jakarta.enterprise:cdi-tck-ext-lib:jar:4.1.1-20210621-lite:compile
[INFO] |  +- org.jboss.arquillian.testng:arquillian-testng-container:jar:1.6.0.Final:compile
[INFO] |  |  +- org.jboss.arquillian.core:arquillian-core-impl-base:jar:1.6.0.Final:compile
[INFO] |  |  +- org.jboss.arquillian.test:arquillian-test-impl-base:jar:1.6.0.Final:compile
[INFO] |  |  +- org.jboss.arquillian.container:arquillian-container-impl-base:jar:1.6.0.Final:compile
[INFO] |  |  |  \- org.jboss.shrinkwrap.descriptors:shrinkwrap-descriptors-spi:jar:2.0.0:compile
[INFO] |  |  \- org.jboss.shrinkwrap:shrinkwrap-impl-base:jar:1.2.6:compile
[INFO] |  |     \- org.jboss.shrinkwrap:shrinkwrap-spi:jar:1.2.6:compile
[INFO] |  +- org.jboss.arquillian.container:container-se-api:jar:1.0.1.Final:compile
[INFO] |  +- org.jboss.shrinkwrap.descriptors:shrinkwrap-descriptors-impl-javaee:jar:2.0.0:compile
[INFO] |  |  +- org.jboss.shrinkwrap.descriptors:shrinkwrap-descriptors-api-javaee:jar:2.0.0:compile
[INFO] |  |  \- org.jboss.shrinkwrap.descriptors:shrinkwrap-descriptors-impl-base:jar:2.0.0:compile
[INFO] |  +- org.testng:testng:jar:6.14.2:compile
[INFO] |  |  +- com.beust:jcommander:jar:1.72:compile
[INFO] |  |  \- org.apache-extras.beanshell:bsh:jar:2.0b6:compile
[INFO] |  +- org.jboss.test-audit:jboss-test-audit-api:jar:2.0.0.Final:compile
[INFO] |  +- commons-httpclient:commons-httpclient:jar:3.1:compile
[INFO] |  |  +- commons-logging:commons-logging:jar:1.0.4:compile
[INFO] |  |  \- commons-codec:commons-codec:jar:1.15:compile
[INFO] |  +- net.sourceforge.htmlunit:htmlunit:jar:2.40.0:compile
[INFO] |  |  +- xalan:xalan:jar:2.7.2:compile
[INFO] |  |  |  \- xalan:serializer:jar:2.7.2:compile
[INFO] |  |  +- org.apache.commons:commons-lang3:jar:3.12.0:compile
[INFO] |  |  +- org.apache.commons:commons-text:jar:1.8:compile
[INFO] |  |  +- net.sourceforge.htmlunit:htmlunit-core-js:jar:2.40.0:compile
[INFO] |  |  +- net.sourceforge.htmlunit:neko-htmlunit:jar:2.40.0:compile
[INFO] |  |  |  \- xerces:xercesImpl:jar:2.12.0:compile
[INFO] |  |  |     \- xml-apis:xml-apis:jar:1.4.01:compile
[INFO] |  |  +- net.sourceforge.htmlunit:htmlunit-cssparser:jar:1.5.0:compile
[INFO] |  |  +- commons-io:commons-io:jar:2.10.0:compile
[INFO] |  |  +- commons-net:commons-net:jar:3.6:compile
[INFO] |  |  +- org.brotli:dec:jar:0.1.2:compile
[INFO] |  |  +- com.shapesecurity:salvation:jar:2.7.1:compile
[INFO] |  |  \- org.eclipse.jetty.websocket:websocket-client:jar:9.4.28.v20200408:compile
[INFO] |  |     +- org.eclipse.jetty:jetty-client:jar:9.4.28.v20200408:compile
[INFO] |  |     |  \- org.eclipse.jetty:jetty-http:jar:9.4.28.v20200408:compile
[INFO] |  |     +- org.eclipse.jetty:jetty-xml:jar:9.4.28.v20200408:compile
[INFO] |  |     +- org.eclipse.jetty:jetty-util:jar:9.4.28.v20200408:compile
[INFO] |  |     +- org.eclipse.jetty:jetty-io:jar:9.4.28.v20200408:compile
[INFO] |  |     \- org.eclipse.jetty.websocket:websocket-common:jar:9.4.28.v20200408:compile
[INFO] |  |        \- org.eclipse.jetty.websocket:websocket-api:jar:9.4.28.v20200408:compile
[INFO] |  +- org.jboss.test-audit:jboss-test-audit-impl:jar:2.0.0.Final:compile
[INFO] |  \- com.sun.xml.ws:jaxws-rt:jar:3.0.0-M3:compile
[INFO] |     +- com.sun.xml.bind:jaxb-impl:jar:3.0.0-M3:compile
[INFO] |     |  \- com.sun.xml.bind:jaxb-core:jar:3.0.0-M3:compile
[INFO] |     +- org.glassfish.ha:ha-api:jar:3.1.12:compile
[INFO] |     +- org.glassfish.external:management-api:jar:3.2.3:compile
[INFO] |     +- org.glassfish.gmbal:gmbal-api-only:jar:4.0.2:compile
[INFO] |     +- org.jvnet.staxex:stax-ex:jar:2.0.0-M2:compile
[INFO] |     +- com.sun.xml.stream.buffer:streambuffer:jar:2.0.0-M2:compile
[INFO] |     +- org.jvnet.mimepull:mimepull:jar:1.9.13:compile
[INFO] |     +- com.sun.xml.fastinfoset:FastInfoset:jar:2.0.0-M2:compile
[INFO] |     +- com.sun.activation:jakarta.activation:jar:1.2.1:runtime
[INFO] |     +- com.sun.mail:jakarta.mail:jar:2.0.0-RC5:runtime
[INFO] |     +- com.sun.xml.messaging.saaj:saaj-impl:jar:2.0.0-M1:runtime
[INFO] |     +- com.fasterxml.woodstox:woodstox-core:jar:5.1.0:runtime
[INFO] |     +- org.codehaus.woodstox:stax2-api:jar:4.1:runtime
[INFO] |     +- jakarta.xml.ws:jakarta.xml.ws-api:jar:3.0.0-RC3:compile
[INFO] |     +- jakarta.xml.bind:jakarta.xml.bind-api:jar:2.3.3:compile
[INFO] |     +- jakarta.xml.soap:jakarta.xml.soap-api:jar:2.0.0-RC3:compile
[INFO] |     \- jakarta.jws:jakarta.jws-api:jar:3.0.0-RC2:compile
[INFO] +- jakarta.transaction:jakarta.transaction-api:jar:2.0.0:compile
[INFO] +- org.eclipse.microprofile.config:microprofile-config-api:jar:ee9:1.4:compile
[INFO] +- io.smallrye.config:smallrye-config:jar:ee9:1.10.0:compile
[INFO] |  +- io.smallrye.common:smallrye-common-annotation:jar:1.6.0:compile
[INFO] |  +- io.smallrye.config:smallrye-config-common:jar:2.3.0:compile
[INFO] |  +- io.smallrye.common:smallrye-common-expression:jar:1.6.0:compile
[INFO] |  |  \- io.smallrye.common:smallrye-common-function:jar:1.6.0:compile
[INFO] |  +- io.smallrye.common:smallrye-common-constraint:jar:1.6.0:compile
[INFO] |  +- io.smallrye.common:smallrye-common-classloader:jar:1.6.0:compile
[INFO] |  +- org.jboss.logging:jboss-logging:jar:3.4.2.Final:compile
[INFO] |  \- org.ow2.asm:asm:jar:9.1:compile
[INFO] +- io.quarkus:quarkus-arc:jar:ee9:999-SNAPSHOT:compile
[INFO] |  \- org.eclipse.microprofile.context-propagation:microprofile-context-propagation-api:jar:1.2:compile
[INFO] +- io.quarkus:quarkus-arc-deployment:jar:ee9:999-SNAPSHOT:compile
[INFO] |  +- io.quarkus:quarkus-core-deployment:jar:999-SNAPSHOT:compile
[INFO] |  |  +- org.aesh:readline:jar:2.1:compile
[INFO] |  |  |  \- org.fusesource.jansi:jansi:jar:1.17.1:compile
[INFO] |  |  +- io.quarkus:quarkus-class-change-agent:jar:999-SNAPSHOT:compile
[INFO] |  |  +- io.quarkus:quarkus-devtools-utilities:jar:999-SNAPSHOT:compile
[INFO] |  |  +- org.eclipse.sisu:org.eclipse.sisu.inject:jar:0.3.4:compile
[INFO] |  |  \- io.quarkus:quarkus-builder:jar:999-SNAPSHOT:compile
[INFO] |  \- io.quarkus:quarkus-vertx-http-dev-console-spi:jar:999-SNAPSHOT:compile
[INFO] |     +- io.quarkus:quarkus-vertx-http-dev-console-runtime-spi:jar:999-SNAPSHOT:compile
[INFO] |     +- io.quarkus.arc:arc:jar:999-SNAPSHOT:compile
[INFO] |     \- io.vertx:vertx-web:jar:4.1.0:compile
[INFO] |        +- io.vertx:vertx-web-common:jar:4.1.0:compile
[INFO] |        +- io.vertx:vertx-auth-common:jar:4.1.0:compile
[INFO] |        +- io.vertx:vertx-bridge-common:jar:4.1.0:compile
[INFO] |        \- io.vertx:vertx-core:jar:4.1.0:compile
[INFO] |           +- io.netty:netty-common:jar:4.1.65.Final:compile
[INFO] |           +- io.netty:netty-buffer:jar:4.1.65.Final:compile
[INFO] |           +- io.netty:netty-transport:jar:4.1.65.Final:compile
[INFO] |           +- io.netty:netty-handler:jar:4.1.65.Final:compile
[INFO] |           |  \- io.netty:netty-codec:jar:4.1.65.Final:compile
[INFO] |           +- io.netty:netty-handler-proxy:jar:4.1.65.Final:compile
[INFO] |           |  \- io.netty:netty-codec-socks:jar:4.1.65.Final:compile
[INFO] |           +- io.netty:netty-codec-http:jar:4.1.65.Final:compile
[INFO] |           +- io.netty:netty-codec-http2:jar:4.1.65.Final:compile
[INFO] |           +- io.netty:netty-resolver:jar:4.1.65.Final:compile
[INFO] |           +- io.netty:netty-resolver-dns:jar:4.1.65.Final:compile
[INFO] |           |  \- io.netty:netty-codec-dns:jar:4.1.65.Final:compile
[INFO] |           \- com.fasterxml.jackson.core:jackson-core:jar:2.12.3:compile
[INFO] +- io.quarkus.arc:arc:jar:ee9:999-SNAPSHOT:compile
[INFO] +- io.quarkus.arc:arc-processor:jar:ee9:999-SNAPSHOT:compile
[INFO] |  +- org.jboss:jandex:jar:2.3.0.Final:compile
[INFO] |  \- io.quarkus.gizmo:gizmo:jar:1.0.9.Final:compile
[INFO] |     \- org.ow2.asm:asm-util:jar:9.1:compile
[INFO] |        +- org.ow2.asm:asm-tree:jar:9.1:compile
[INFO] |        \- org.ow2.asm:asm-analysis:jar:9.1:compile
[INFO] +- io.quarkus:quarkus-core:jar:ee9:999-SNAPSHOT:compile
[INFO] |  +- io.quarkus:quarkus-ide-launcher:jar:999-SNAPSHOT:compile
[INFO] |  +- io.quarkus:quarkus-development-mode-spi:jar:999-SNAPSHOT:compile
[INFO] |  +- org.jboss.logmanager:jboss-logmanager-embedded:jar:1.0.9:compile
[INFO] |  +- org.jboss.logging:jboss-logging-annotations:jar:2.2.1.Final:compile
[INFO] |  +- org.jboss.threads:jboss-threads:jar:3.4.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.1.0:compile
[INFO] |  +- org.wildfly.common:wildfly-common:jar:1.5.4.Final-format-001:compile
[INFO] |  \- io.quarkus:quarkus-bootstrap-runner:jar:999-SNAPSHOT:compile
[INFO] +- io.quarkus:quarkus-arquillian:jar:ee9:999-SNAPSHOT:compile
[INFO] |  +- io.quarkus:quarkus-test-common:jar:999-SNAPSHOT:compile
[INFO] |  |  +- io.quarkus:quarkus-jsonp-deployment:jar:999-SNAPSHOT:compile
[INFO] |  |  |  \- io.quarkus:quarkus-jsonp:jar:999-SNAPSHOT:compile
[INFO] |  |  |     \- org.glassfish:jakarta.json:jar:1.1.6:compile
[INFO] |  |  \- org.jboss.logging:commons-logging-jboss-logging:jar:1.0.0.Final:compile
[INFO] |  +- org.jboss.arquillian.container:arquillian-container-spi:jar:1.6.0.Final:compile
[INFO] |  |  +- org.jboss.arquillian.config:arquillian-config-api:jar:1.6.0.Final:compile
[INFO] |  |  \- org.jboss.arquillian.config:arquillian-config-impl-base:jar:1.6.0.Final:compile
[INFO] |  |     \- org.jboss.arquillian.config:arquillian-config-spi:jar:1.6.0.Final:compile
[INFO] |  +- org.jboss.arquillian.container:arquillian-container-test-spi:jar:1.6.0.Final:compile
[INFO] |  \- org.jboss.arquillian.container:arquillian-container-test-impl-base:jar:1.6.0.Final:compile
[INFO] \- io.quarkus:quarkus-bootstrap-core:jar:999-SNAPSHOT:compile
[INFO]    +- io.quarkus:quarkus-bootstrap-app-model:jar:999-SNAPSHOT:compile
[INFO]    +- io.quarkus:quarkus-bootstrap-maven-resolver:jar:999-SNAPSHOT:compile
[INFO]    |  +- org.apache.maven:maven-embedder:jar:3.6.3:compile
[INFO]    |  |  +- org.apache.maven:maven-settings:jar:3.6.3:compile
[INFO]    |  |  +- org.apache.maven:maven-core:jar:3.8.1:compile
[INFO]    |  |  |  +- org.apache.maven:maven-artifact:jar:3.8.1:compile
[INFO]    |  |  |  \- org.codehaus.plexus:plexus-component-annotations:jar:2.1.0:compile
[INFO]    |  |  +- org.apache.maven:maven-plugin-api:jar:3.8.1:compile
[INFO]    |  |  +- org.apache.maven:maven-model:jar:3.8.1:compile
[INFO]    |  |  +- org.apache.maven:maven-model-builder:jar:3.6.3:compile
[INFO]    |  |  +- org.apache.maven:maven-builder-support:jar:3.6.3:compile
[INFO]    |  |  +- org.apache.maven.resolver:maven-resolver-api:jar:1.4.1:compile
[INFO]    |  |  +- org.apache.maven.resolver:maven-resolver-util:jar:1.4.1:compile
[INFO]    |  |  +- org.apache.maven.shared:maven-shared-utils:jar:3.2.1:compile
[INFO]    |  |  +- com.google.inject:guice:jar:no_aop:4.2.1:compile
[INFO]    |  |  |  \- com.google.guava:guava:jar:30.1.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.plexus:plexus-utils:jar:3.2.1:compile
[INFO]    |  |  +- org.codehaus.plexus:plexus-classworlds:jar:2.6.0:compile
[INFO]    |  |  \- commons-cli:commons-cli:jar:1.4:compile
[INFO]    |  +- org.eclipse.sisu:org.eclipse.sisu.plexus:jar:0.3.4:compile
[INFO]    |  +- org.apache.maven:maven-settings-builder:jar:3.8.1:compile
[INFO]    |  |  +- org.codehaus.plexus:plexus-interpolation:jar:1.25:compile
[INFO]    |  |  \- org.sonatype.plexus:plexus-sec-dispatcher:jar:1.4:compile
[INFO]    |  |     \- org.sonatype.plexus:plexus-cipher:jar:1.7:compile
[INFO]    |  +- org.apache.maven:maven-resolver-provider:jar:3.8.1:compile
[INFO]    |  |  +- org.apache.maven:maven-repository-metadata:jar:3.6.3:compile
[INFO]    |  |  +- org.apache.maven.resolver:maven-resolver-spi:jar:1.4.1:compile
[INFO]    |  |  \- org.apache.maven.resolver:maven-resolver-impl:jar:1.4.1:compile
[INFO]    |  +- org.apache.maven.resolver:maven-resolver-connector-basic:jar:1.6.2:compile
[INFO]    |  +- org.apache.maven.resolver:maven-resolver-transport-wagon:jar:1.4.1:compile
[INFO]    |  +- org.apache.maven.wagon:wagon-http:jar:3.4.3:compile
[INFO]    |  |  +- org.apache.maven.wagon:wagon-http-shared:jar:3.4.3:compile
[INFO]    |  |  |  \- org.jsoup:jsoup:jar:1.12.1:compile
[INFO]    |  |  +- org.apache.httpcomponents:httpclient:jar:4.5.13:compile
[INFO]    |  |  +- org.apache.httpcomponents:httpcore:jar:4.4.14:compile
[INFO]    |  |  \- org.apache.maven.wagon:wagon-provider-api:jar:3.3.4:compile
[INFO]    |  \- org.apache.maven.wagon:wagon-file:jar:3.3.4:compile
[INFO]    +- io.quarkus:quarkus-bootstrap-gradle-resolver:jar:999-SNAPSHOT:compile
[INFO]    \- io.smallrye.common:smallrye-common-io:jar:1.6.0:compile
[INFO] ------------------------------------------------------------------------

The key dependency to highlight is that io.quarkus:quarkus-arc-deployment has been transformed into io.quarkus:quarkus-arc-deployment:ee9 and that is has a dependency on io.quarkus:quarkus-arc:ee9. The transformation has also updated the io.quarkus:quarkus-arc-deployment:ee9 artifact to include an updated META-INF/quarkus-extension.properties file that points to the transformed deployment-artifact io.quarkus:quarkus-arc-deployment:ee9:

└> cat ee9/META-INF/quarkus-extension.properties 
#Generated by extension-descriptor
#Fri Jun 25 01:14:58 CDT 2021
provides-capabilities=io.quarkus.cdi
deployment-artifact=io.quarkus\:quarkus-arc-deployment\:ee9\:999-SNAPSHOT

What appears to be happening is that the default maven resolver is going out to the location for the io.quarkus:quarkus-arc-deployment:ee9 artifact, and reading the pom.xml file for the io.quarkus:quarkus-arc-deployment artifact since both artifacts reside in the same io.quarkus/quarkus-arc-deployment/ee9/999-SNAPSHOT directory. It is not expecting that the ee9 qualified jar artifact has different dependencies from the standard jar artifact. Arguably it is a misuse of the qualifier mechanism to provide an alternative jar artifact.

The workaround I am looking at next is to produce proper distinct io.quarkus:quarkus-arc-ee9, io.quarkus:quarkus-arc-deployment-ee9, etc. to avoid relying on the qualifier approach.

Expected behavior

The resolved runtime artifact for io.quarkus:quarkus-arc-deployment:ee9:999-SNAPSHOT should be seen to be io.quarkus:quarkus-arc:jar:ee9:999-SNAPSHOT, the same as it is seen when running mvn depedency:tree

Actual behavior

[ERROR] org.jboss.cdi.tck.tests.implementation.builtin.metadata.broken.typeparam.interceptor.InterceptedBeanTypeParamConstructorTest.arquillianBeforeClass Time elapsed: 1.233 s <<< FAILURE! org.jboss.arquillian.container.spi.client.container.DeploymentException: Unable to start the runtime runner Caused by: io.quarkus.bootstrap.BootstrapException: Failed to create the application model for io.quarkus.arc.tck:arc-tck-runner::jar:1.0.0-SNAPSHOT Caused by: io.quarkus.bootstrap.resolver.AppModelResolverException: Failed to inject extension deployment dependencies for io.quarkus.arc.tck:arc-tck-runner:jar:1.0.0-SNAPSHOT Caused by: io.quarkus.bootstrap.BootstrapDependencyProcessingException: Quarkus extension deployment artifact io.quarkus:quarkus-arc-deployment:ee9:999-SNAPSHOT does not appear to depend on the corresponding runtime artifact io.quarkus:quarkus-arc:jar:ee9:999-SNAPSHOT

How to Reproduce?

TBD: The code that illustrates this is currently in several forks of related projects and not in a shape that it can be cloned and tested. If it is worthwhile to pursue this approach I'll pull those together.

Output of uname -a or ver

No response

Output of java -version

No response

GraalVM version (if different from Java)

No response

Quarkus version or git rev

No response

Build tool (ie. output of mvnw --version or gradlew --version)

No response

Additional information

No response

quarkus-bot[bot] commented 3 years ago

/cc @manovotn, @mkouba

n1hility commented 3 years ago

The solution that we have used in other contexts is to switch to independent artifactids, so that each can have its own dep specification. An example for hibernate is here: https://github.com/hibernate/hibernate-orm/blob/main/hibernate-core-jakarta/hibernate-core-jakarta.gradle. Although it's gradle based.

/cc @Sanne @radcortez

manovotn commented 2 years ago

Closing this issue as CDI Lite TCK compatibility will be checked once Quarkus moves to EE 10 (for which there is currently nightly transformed branch). There is a tracking issue for it, see https://github.com/quarkusio/quarkus/issues/28558