Open
Description
This issue is part of a broader proposal to merge some of the features in lucidsoftware/rules_scala into this ruleset.
The tracking issue for this effort
The relevant proposal section.
From the proposal:
bazelbuild/rules_scala
uses the following rules/macros for fetching external dependencies from Maven (seescala/scala_maven_import_external.bzl
).
java_import_external
jvm_import_external
jvm_maven_import_external
scala_import_external
scala_maven_import_external
The
java_*
andjvm_*
rules/macros are copied frombazelbuild/bazel
(seejvm.bzl
andjava.bzl
), and thescala_*
macros use them under the hood.Today,
rules_jvm_external
is the standard for fetching external Java and Scala dependencies built with build systems other than Bazel (e.g. Maven), and, inlucidsoftware/rules_scala
it’s worked quite well for us. The main advantages are:
- Using external dependencies is as simple as importing
rules_jvm_external
- Downloaded artifacts, their checksums, and their versions are “pinned” into a file checked into the repository
- External dependencies can be declared in a single
maven_install
target instead of each having to be declared in a separate target- It supports Bzlmod, which should ease a future migration
Metadata
Metadata
Assignees
Labels
No labels