Managing Projects
Initialize
Section titled “Initialize”Run jup init from a Maven project root. The current directory must contain
pom.xml.
jup initInitialization resolves the project root, detects Maven, reads the Java requirement, locates a matching JDK, and persists the toolchain. Running it again refreshes Maven and JDK while preserving an existing settings alias.
After initialization, project-aware commands search upward from the current
directory. status, doctor, run, settings use, settings unset,
and uninit therefore work inside modules and other descendant directories.
Inspect
Section titled “Inspect”jup statusThe output includes project root, Maven version and source, Maven executable, Java version, JDK path, and the Maven settings alias.
Diagnose
Section titled “Diagnose”jup doctorThe command checks the saved configuration, POM, Maven executable, JDK, and
bound settings file without changing configuration. Results are reported as
PASS, WARN, or FAIL. Any failure produces exit status 1 and an actionable
repair, usually restoring the resource or running jup init again.
Manage the Global Registry
Section titled “Manage the Global Registry”List every initialized project:
jup projects listRegistry status is available, missing, or invalid. Remove one record by
explicit path, or preview and prune every stale record:
jup projects remove /path/to/projectjup projects prune --dry-runjup projects pruneThese commands remove saved configuration and usage records only. They never delete project sources, JDKs, Maven installations, or settings files.
Remove One Project Configuration
Section titled “Remove One Project Configuration”jup uninitThis removes the nearest initialized project configuration and its usage ranking record. It is idempotent and does not modify project files.