This plugin configures various aspects of dependency management. Where values are configurable, a
default is specified.
Certain values are configurable via dependencySettings extension inside each project
build.gradle.kts, but most are
configured only once in a dependencySettings extension in settings.gradle.kts.
- Adds a version catalog (default name:
commonLibs, default artifact:org.hypertrace.bom:hypertrace-version-catalog:<catalogVersion>. catalogVersion must be set explicitly) - Renames the default
libscatalog (fromlibs.versions.toml) tolocalLibsto disambiguate - For each java project:
- Adds dependency repositories of mavenLocal, mavenCentral, confluent and hypertrace
- If
autoApplyBomis specified (default: true), adds a BOM dependency to theapiconfiguration (falling back toimplementationifapiis unavailable). The BOM reference to use (bomArtifactName- defaulthypertrace.bom) and version can also be configured.bomVersionName(defaults tohypertrace.bom) describes the name of the version property in the catalog andbomVersion(defaults to latest -+) describes the value to assign. - If
useDependencyLockingis specified (default: true), configures strict dependency locking on certain configurations ( default:annotationProcessor,compileClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath)- If integration tests are found, it will also add
integrationTestCompileClasspathandintegrationTestRuntimeClasspath
- If integration tests are found, it will also add
- If
useDependencyLockingis specified (default: true), adds a project taskresolveAndLockAllwhich can be used in conjunction with the--write-locksflag to update all project lockfiles.
Example usage in settings.gradle.kts:
plugins {
id("org.hypertrace.dependency-settings") version "0.1.0"
}
configure<DependencyPluginSettingExtension> {
catalogVersion.set("0.1.0")
}