# Raven First off, the name is not a play on `Rust + maven`, but `maven` and my uni's mascot. Second, this is meant to be a *simple* tool to manage *simple* Java projects from the command line with sanity. It takes inspiration from Cargo, and essentially serves as a sanity-preserving wrapper for `javac` and `java`. ## Installing Installing with `cargo`: ```bash cargo install --git https://gitea.cutieguwu.ca/Cutieguwu/raven.git --branch master ``` `raven` will likely fall back to panicking in various scenarios. This will be worked out over time. `raven` is only tested under linux. NT and Darwin support is **not** guaranteed. WSL *may* affect the behaviour of raven. Quirks to be worked out. ## Getting Started ```bash raven new demo cd demo raven run main ``` ## Raven commands ```bash Usage: raven Commands: new Create a new raven project init Create a new raven project in an existing directory build Compile the current project run Run the current project test !!! BORKED !!! Run the tests clean Remove the target directory and caching help Print this message or the help of the given subcommand(s) Options: -h, --help Print help -V, --version Print version ``` ## Future plans - [ ] Make `raven run` fall back to an entry point specified in Nest.toml, when none provided. - [ ] Fix project structure, eliminate inter-dependencies. - [ ] Separate out `java.rs` into a dedicated wrapper library. - [ ] Possibly add support for pulling remote packages via `raven add`. This will be implemented should there arise a need. - [ ] Wrap errors properly, instead of hap-hazardly using `anyhow` - [ ] Maybe proper logging?