Skip to content

no such target '@@+toolchains+local_jdk//:runtime_toolchain_definition' on Windows when JAVA_HOME is set to mapped drive #339

@peakschris

Description

@peakschris

I set JAVA_HOME to a mapped network drive copy of JDK 21 on Windows.
This is with latest rules_java and all rules_java releases back to 8.5 (I stopped searching at that point)

set JAVA_HOME=t:\jdk\jdk21
Bazel build fails

D:\workdir\github\rules_java>bazel build //... --noincompatible_disallow_empty_glob
ERROR: Traceback (most recent call last):
        File "D:/udu/b/4skhmsqa/external/+toolchains+local_jdk/BUILD.bazel", line 78, column 66, in <toplevel>
                java = glob(["bin/java.exe", "bin/java"], allow_empty = True)[0],
Error: index out of range (index is 0, but sequence has 0 elements)
ERROR: D:/workdir/github/rules_java/toolchains/BUILD:285:14: While resolving toolchains for target //toolchains:platformclasspath (4e49fa3): invalid registered toolchain '@local_jdk//:runtime_toolchain_definition': no such target '@@+toolchains+local_jdk//:runtime_toolchain_definition': target 'runtime_toolchain_definition' not declared in package '' defined by D:/udu/b/4skhmsqa/external/+toolchains+local_jdk/BUILD.bazel
Use --verbose_failures to see the command lines of failed build steps.
ERROR: Analysis of target '//toolchains:platformclasspath' failed; build aborted
INFO: Elapsed time: 1.601s, Critical Path: 0.00s
INFO: 1 process: 1 internal.
ERROR: Build did NOT complete successfully

set JAVA_HOME to a local copy

xcopy /E t:\jdk\jdk21 d:\jdk\jdk21
set JAVA_HOME=d:\jdk\jdk21

Bazel build succeeds

Metadata

Metadata

Assignees

No one assigned

    Labels

    P3We're not considering to work on this, but happy to review a PR. (No assignee)questionFurther information is requested

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions