MCPcopy Create free account
hub / github.com/SeleniumHQ/selenium / find_java_binary

Function find_java_binary

rust/src/jre.rs:308–327  ·  view source on GitHub ↗
(root: &Path)

Source from the content-addressed store, hash-verified

306}
307
308fn find_java_binary(root: &Path) -> Option<PathBuf> {
309 let java_binary = if OS == "windows" { "java.exe" } else { "java" };
310 for entry in WalkDir::new(root).into_iter().flatten() {
311 let path = entry.path();
312 if path.is_file()
313 && path
314 .file_name()
315 .map(|name| name.eq_ignore_ascii_case(java_binary))
316 .unwrap_or(false)
317 && path
318 .parent()
319 .and_then(|parent| parent.file_name())
320 .map(|name| name.eq_ignore_ascii_case("bin"))
321 .unwrap_or(false)
322 {
323 return Some(path.to_path_buf());
324 }
325 }
326 None
327}
328
329fn read_java_version(java_path: &Path) -> Result<Option<String>, Error> {
330 let output = Command::new(java_path).arg("-version").output()?;

Calls 3

parentMethod · 0.80
pathMethod · 0.45
mapMethod · 0.45