Given a fragment like:
bomDependencies enforcedPlatform( 'io.quarkus:quarkus-bom:1.7.1.Final' )
hibernateOrmDependencies 'io.quarkus:quarkus-hibernate-orm'
hibernateOrmDependencies 'com.github.ben-manes.caffeine:caffeine:2.6.2'
jdbcDerbyDependencies 'io.quarkus:quarkus-jdbc-derby'
where hibernateOrmDependencies
and jdbcDerbyDependencies
extend from bomDependencies
…
Is there a way to determine whether dependencies defined in the BOM are used or are just “platform deps”?
E.g., this fragment produces something like:
hibernateOrmDependencies
+--- io.quarkus:quarkus-bom:1.7.1.Final
| +--- io.quarkus:quarkus-hibernate-orm:1.7.1.Final (c)
| +--- com.github.ben-manes.caffeine:caffeine:2.8.5 (c)
| +--- io.quarkus:quarkus-core:1.7.1.Final (c)
...
+--- io.quarkus:quarkus-hibernate-orm -> 1.7.1.Final
| +--- io.quarkus:quarkus-core:1.7.1.Final
| | +--- jakarta.annotation:jakarta.annotation-api:1.3.5
...
What I’d like to understand is whether a certain dependency is actually used or is present simply because it is defined in the BOM. Ideally within a ResolutionStrategy
I register with hibernateOrmDependencies
and jdbcDerbyDependencies
.
Thanks!
P.S. A little background in case that helps or if someone sees a better way… as I said I register a ResolutionStrategy with these Configurations. The purpose is to recognize whether a certain dependency is a special type of artifact and do something special with them. However I only want to do that behavior if the artifact is actually used and not just referenced in the BOM