From 603fb5ca30d7bd46dc1713829165033a3635e1e8 Mon Sep 17 00:00:00 2001 From: Bartosz Popiela Date: Thu, 2 May 2024 19:56:30 +0200 Subject: [PATCH] Fix "failed to call RLocation: runfile (...)/Main: file does not exist" (#259) Fix "bazel run gazelle" failing on Windows with the following error: > 1:57PM FTL external/contrib_rules_jvm/java/gazelle/configure.go:139 > could not start javaparser error="failed to start / connect to javaparser server: failed to find javaparser in runfiles: failed to call RLocation: runfile contrib_rules_jvm/java/src/com/github/bazel_contrib/contrib_rules_jvm/javaparser/generators/Main: file does not exist" (Fixes #257) --- java/gazelle/private/servermanager/servermanager.go | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/java/gazelle/private/servermanager/servermanager.go b/java/gazelle/private/servermanager/servermanager.go index d3b093f0..7ce1658b 100644 --- a/java/gazelle/private/servermanager/servermanager.go +++ b/java/gazelle/private/servermanager/servermanager.go @@ -92,11 +92,15 @@ func locateJavaparser() (string, error) { } // We want //java/src/com/github/bazel_contrib/contrib_rules_jvm/javaparser/generators:Main - loc, err := rf.Rlocation("contrib_rules_jvm/java/src/com/github/bazel_contrib/contrib_rules_jvm/javaparser/generators/Main") + javaparserPath := "contrib_rules_jvm/java/src/com/github/bazel_contrib/contrib_rules_jvm/javaparser/generators/Main" + loc, err := rf.Rlocation(javaparserPath) if err != nil { - return "", fmt.Errorf("failed to call RLocation: %w", err) + loc, err = rf.Rlocation(javaparserPath + ".exe") } + if err != nil { + return "", fmt.Errorf("failed to call RLocation: %w", err) + } return loc, nil }