picocli.4.7.2.source-code.overview.html Maven / Gradle / Ivy
Picocli is a framework for creating Java command line applications with almost zero code.
The project contains multiple modules, but most applications only need a few of them.
The table below shows the JPMS module name and the Maven coordinates for all modules in the project.
Picocli project modules: JPMS module name and their Maven coordinates
JPMS module name
Maven coordinates (without version)
info.picocli
info.picocli:picocli
info.picocli.codegen
info.picocli:picocli-codegen
info.picocli.groovy
info.picocli:picocli-groovy
info.picocli.shell.jline2
info.picocli:picocli-shell-jline2
info.picocli.shell.jline3
info.picocli:picocli-shell-jline3
info.picocli.spring.boot
info.picocli:picocli-spring-boot-starter
Most application will only need the main picocli
module, but
we recommend also configuring
the picocli-codegen
module as an annotation processor for your project.
This provides compile-time error checking and
generates GraalVM
configuration files under
META-INF/native-image/picocli-generated/$project
during compilation,
to be included in the application jar.
This in turn facilitates converting your command line application to a native image.
The picocli-groovy
module allows
Groovy scripts to use picocli
annotations for even more compact code.
The picocli-shell-jline2
and picocli-shell-jline3
modules
are of interest to applications that want to provide an interactive shell-like console.
The picocli-spring-boot-starter
module provides Spring integration.
Particularly, it allows for @Autowired
or
@javax.inject
-annotated program elements in picocli components
(commands, subcommands, type converters, default providers, etc.)
to be injected with values from Spring's Application Context.