> ## Documentation Index
> Fetch the complete documentation index at: https://docs.incredibuild.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Running Builds for Bazel

Last updated on Aug 25, 2026

Build Cache is generally case insensitive, whereas Bazel is case sensitive.

To fix this, add `/BuildCacheProfile=<IB installation folder\BuildCache Profiles\BuildCache_profile_bazel.xml>` to the BuildConsole command.

Incredibuild interception also requires processes spawned by Incredibuild. Bazel is a long-running service which means it cannot be intercepted by the current build if started earlier. Bazel must therefore be restarted. The `bazel.ib_profile.xml` includes `<PreBuildStep Filepath="path\to\bazel.exe shutdown"/>` at the xml root level, and bazel and java listed in the Tools list with `AllowIntercept="true"`.

To activate this, add `/Profile=<IB installation folder\Profiles\bazel.ib_profile.xml>` to the IBConsole command.

```xml theme={null}
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<!-- Bazel (Windows, MSVC). cl.exe is spawned by Bazel's Java server, not bazel.exe - both need interception. -->
<Profile FormatVersion="1">

  <!-- Bazel's long-running Java server can only be intercepted if BuildConsole's
       own process tree creates it. Set the full path to bazel.exe below so it
       restarts the server before each build. -->
  <PreBuildStep Filepath="path\to\bazel.exe shutdown" />

  <Tools>

    <Tool Filename="bazel" AllowIntercept="true" />
    <Tool Filename="java"  AllowIntercept="true" />

  </Tools>
</Profile>
```
