Chapter 10. Logging the Quarkus application build classpath tree

The Quarkus build process adds deployment dependencies of the extensions that you use in the application to the original application classpath. You can see which dependencies and versions are included in the build classpath. The quarkus-bootstrap Maven plug-in includes the build-tree goal which displays the build dependency tree for the application.

Prerequisites

  • You have a Quarkus Maven application.

Procedure

  1. Add the plug-in configuration to the pom.xml file:

    <project>
        [...]
          <plugin>
              <groupId>io.quarkus</groupId>
              <artifactId>quarkus-bootstrap-maven-plugin</artifactId>
              <version>${quarkus-plugin.version}</version>
          </plugin>
        [...]
    </project>
  2. To list the build dependency tree of your application, enter the following command:

    ./mvnw quarkus-bootstrap:build-tree
  3. The output of this command should be similar to the following example:

    [INFO] --- quarkus-bootstrap-maven-plugin:1.3:build-tree (default-cli) @ getting-started ---
    [INFO] org.acme:getting-started:jar:1.0-SNAPSHOT
    [INFO] └─ io.quarkus:quarkus-resteasy-deployment:jar:1.3 (compile)
    [INFO]    ├─ io.quarkus:quarkus-resteasy-server-common-deployment:jar:1.3 (compile)
    [INFO]    │  ├─ io.quarkus:quarkus-core-deployment:jar:1.3 (compile)
    [INFO]    │  │  ├─ commons-beanutils:commons-beanutils:jar:1.9.3 (compile)
    [INFO]    │  │  │  ├─ commons-logging:commons-logging:jar:1.2 (compile)
    [INFO]    │  │  │  └─ commons-collections:commons-collections:jar:3.2.2 (compile)
    ...
Note

The mvn dependency:tree command displays only the runtime dependencies of your application