Migrating From Maven to Bazel
summary
Salesforce moves many Java libraries and microservices into a Bazel monorepo while keeping Maven consumers working by publishing artifacts; a small exportable metadata file (groupId/artifactId) plus a Python script uses bazel query to generate POMs and then delegates to Maven to install and deploy. Spring Boot needed a custom Skylark rule, Docker images use a cached parent image to satisfy security users, flaky tests are recorded at method level from BEP and ignored temporarily, CI validates Maven consumers and remote cache/execution is pending.
AI-written summary · about
chapters (11)
- 0:00Maven to Bazel migration
- 1:09Salesforce architecture
- 3:18Migration goals and challenges
- 4:45Spring Boot in Bazel
- 5:48CI with Jenkins and Kubernetes
- 6:52Docker rules and tooling
- 8:18Flaky test fixes
- 10:24Caching and remote execution
- 11:50Maven integration
- 16:51Migration progress
- 17:34IDE support and plans
related talks
08mLightning Talk – Creating Java based Source Code Generators for Bazel
06mLightning Talk – Back to a Maven [Repository]
31mThe Road To Maven
09mLightning Talk – Building Eclipse Plug-Ins (and OSGi Bundles) with Bazel
07mLightning Talk – Bazel Eclipse Feature
46mPainless Organisation and Maintenance of Maven Builds
16mMaven - Taming the Beast
58mThe Current State of Apache Maven 4
