Skip to content

sormuras/bach

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Bach - Java Shell Builder - Builds (on(ly)) Modules

"The tools we use have a profound (and devious!) influence on our thinking habits, and, therefore, on our thinking abilities."

E. W. Dijkstra, 18 June 1975

Bach is a Java Shell-like that orchestrates JDK tools for building modular Java projects.

Prelude

Install Bach's basic tool framework using its sources via git and Java 22 or higher.

First time:

mkdir myproject
cd myproject
git init
git submodule add https://github.com/sormuras/run.bach .bach/src/run.bach/run/bach
echo .bach/src/run.bach/run/bach/internal/RunTool.java > .bach/run

Subsequent times:

cd myproject
git submodule update --remote --recursive

Run time:

java @.bach/run jar --version
java @.bach/run java --version
java @.bach/run https://raw.githubusercontent.com/sormuras/hello/main/Hello.java World
java @.bach/run https://github.com/sormuras/hello/releases/download/1-M3/hello-1-M3.jar World

Consult the following manual pages for details of git and java tools:

  • git init - Create an empty Git repository or reinitialize an existing one
  • git submodule - Initialize, update or inspect submodules
  • java @file - Java Command-Line Argument Files

be free - have fun

jdk22 experimental jsb