diff options
Diffstat (limited to 'src/main/cpp/startup_options.cc')
-rw-r--r-- | src/main/cpp/startup_options.cc | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/src/main/cpp/startup_options.cc b/src/main/cpp/startup_options.cc index 8f028f55c6..7b5625c2ef 100644 --- a/src/main/cpp/startup_options.cc +++ b/src/main/cpp/startup_options.cc @@ -414,16 +414,24 @@ string StartupOptions::GetSystemJavabase() const { return blaze::GetSystemJavabase(); } +string StartupOptions::GetEmbeddedJavabase() { + string bundled_jre_path = blaze_util::JoinPath( + install_base, "_embedded_binaries/embedded_tools/jdk"); + if (blaze_util::CanExecuteFile(blaze_util::JoinPath( + bundled_jre_path, GetJavaBinaryUnderJavabase()))) { + return bundled_jre_path; + } + return ""; +} + string StartupOptions::GetHostJavabase() { // 1) Allow overriding the host_javabase via --host_javabase. if (!host_javabase.empty()) { return host_javabase; } if (default_host_javabase.empty()) { - string bundled_jre_path = blaze_util::JoinPath( - install_base, "_embedded_binaries/embedded_tools/jdk"); - if (blaze_util::CanExecuteFile(blaze_util::JoinPath( - bundled_jre_path, GetJavaBinaryUnderJavabase()))) { + string bundled_jre_path = GetEmbeddedJavabase(); + if (!bundled_jre_path.empty()) { // 2) Use a bundled JVM if we have one. default_host_javabase = bundled_jre_path; } else { |