Skip to content

kadzuya/sbt-client

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

sbt-client

A thin client for sbt.

Inspired by Eugene's PR, I decided to write a thin client without the JVM startup overhead.

How to install

There are a couple of ways to install sbt-client:

  1. If you are on a Mac and you trust me enough to download a random binary file when I tell you to, you can download the binary from the GitHub release.

  2. If you don't mind installing Rust, you can download the latest version by installing from source.

Installing from source

  1. Install Rust (on a Mac this is simply brew install rust)

  2. Check that ~/.cargo/bin is on your $PATH.

  3. Clone this repo.

  4. Run cargo install. This will create ~/.cargo/bin/sbt-client.

How to use

In the root directory of an sbt project, run sbt-client <some sbt command>.

e.g. sbt-client clean.

If sbt is not running, it will automatically start it for you and keep it running in the background. So the next time you run sbt-client it will be much more snappy.

Note: this assumes that sbt is on your $PATH. To start the server, sbt-client simply runs sbt with no arguments.

Examples

sbt-client clean starting an sbt server:

Starting an sbt server

sbt-client clean again, now that the server is running:

sbt-client clean

sbt-client compile displaying compilation errors:

Compilation errors

Performance

$ time sbt-client clean
[info] Processing
[success] Done
sbt-client clean  0.00s user 0.00s system 5% cpu 0.075 total

Compatibility

  • Developed and tested on MacOS
  • Should also work on Linux
  • Will NOT work on Windows

About

A thin client for sbt

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Rust 100.0%