2026-02-16 20:40:36 -05:00
2026-02-16 20:40:36 -05:00
2026-01-25 21:20:03 -05:00
2026-01-26 21:19:56 -05:00
2026-02-15 20:36:54 -05:00
2026-01-25 21:20:03 -05:00
2026-01-25 21:25:06 -05:00
2026-02-15 20:41:56 -05:00

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:

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

raven new demo
cd demo
raven run main

Raven commands

Usage: raven <COMMAND>

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?
Description
A simple tool for managing simple Java projects
Readme MIT 271 KiB
Languages
Rust 98.4%
Java 1.6%