java-manager 0.2.0

A Rust library for managing and locating Java installations
Documentation
use std::error::Error;
use java_manager::{JavaRedirect, JavaRunner, java_home};

fn main() -> Result<(), Box<dyn Error>> {
    let java = java_home().unwrap();

    let _ = java.execute("-version");
    let _ = java.execute_with_output("-jar examples/app.jar"); 
    let _ = java.execute_with_error("-jar examples/error.jar");

    let redirect = JavaRedirect::new()
        .output("out.log")
        .error("err.log")
        .input("data.txt");

    JavaRunner::new()
        .java(java)
        .jar("examples/myapp.jar")
        .min_memory(512 * 1024 * 1024)   // 512 MB
        .max_memory(2 * 1024 * 1024 * 1024) // 2 GB
        .arg("--verbose")
        .redirect(redirect)
        .execute()?;

    Ok(())
}