Skip to content

Bazel rules to resolve, fetch and manage 3rdparty JVM dependencies with support for multiple parallel versions of the same dependency. Powered by Coursier.

Notifications You must be signed in to change notification settings

eed3si9n/bazel-multiversion

 
 

Repository files navigation

bazel-multideps

Alternative to bazelbuild/rules_jvm_external that supports multiple versions of the same 3rdparty dependency.

Getting started

# Step 1: Clone repo
git clone https://github.com/olafurpg/bazel-multideps
cd bazel-multideps

# Step 2: Build and run code with different versions of Guava
bazel build tricky/...
bazel run tricky/user/src/main/scala/bincompat:NeedsGuava24
bazel run tricky/user/src/main/scala/bincompat:NeedsGuava29

# (optional) Step 3: make changes to 3rdparty.yaml and regenerate 3rdparty/jvm_deps.bzl
# NOTE: This step can become a native-imagine binary with instant startup.
./sbt multideps/run export

About

Bazel rules to resolve, fetch and manage 3rdparty JVM dependencies with support for multiple parallel versions of the same dependency. Powered by Coursier.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Scala 75.4%
  • Shell 18.7%
  • Starlark 4.5%
  • Jupyter Notebook 1.4%