[package]
name = "java-manager"
version = "0.4.0-1b"
edition = "2024"
description = "A Rust library for managing and locating Java installations"
license = "MIT OR Apache-2.0"
keywords = ["java", "locator", "manager", "jvm"]
categories = ["development-tools"]
authors = ["TaimWay <taimway@gmail.com>"]
repository = "https://github.com/TaimWay/java-manager"
documentation = "https://docs.rs/java-manager"
readme = "Readme.md"
[features]
default = []
parallel = ["rayon"]
download = ["reqwest", "tokio", "futures-util", "flume", "zip", "flate2", "tar"]
[dependencies]
glob = "0.3.3"
is_executable = "1.0.5"
log = "0.4"
rayon = { version = "1.10", optional = true }
shell-words = "1.1.1"
reqwest = { version = "0.12", default-features = false, features = ["stream"], optional = true }
tokio = { version = "1", features = ["fs", "io-util", "rt", "macros", "rt-multi-thread"], optional = true }
futures-util = { version = "0.3", optional = true }
flume = { version = "0.11", optional = true }
[dev-dependencies]
tempfile = "3.3"
[target.'cfg(target_os = "windows")'.dependencies]
everything-sdk = "0.0.6"
winreg = "0.55.0"
windows = { version = "0.62.2", features = [ "Win32_Foundation", "Win32_UI_WindowsAndMessaging"] }
zip = { version = "2", optional = true }
[target.'cfg(any(target_os = "linux", target_os = "macos"))'.dependencies]
walkdir = "2"
flate2 = { version = "1", optional = true }
tar = { version = "0.4", optional = true }