awesome-repositories.com
Blog
MCP
awesome-repositories.com

Descubre los mejores repositorios open-source con nuestra búsqueda potenciada por IA.

ExplorarBúsquedas curadasAlternativas open-sourceSoftware autohospedableBlogMapa del sitio
ProyectoAcerca deCómo clasificamosPrensaServidor MCP
Aviso legalPrivacidadTérminos
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
remkop avatar

remkop/picocli

0
View on GitHub↗
5,387 estrellas·467 forks·Java·Apache-2.0·5 vistaspicocli.info↗

Picocli

picocli es un framework de desarrollo de interfaz de línea de comandos (CLI) y analizador de argumentos para aplicaciones basadas en JVM. Mapea opciones de línea de comandos y parámetros posicionales a métodos y campos de Java fuertemente tipados utilizando un modelo declarativo basado en anotaciones.

El framework proporciona soporte específico para la compilación de imágenes nativas, produciendo los archivos de configuración de reflexión y recursos necesarios para construir binarios independientes con menor sobrecarga de inicio. Se distingue además con un sistema dedicado para generar scripts de autocompletado de shell y un estilizador de terminal ANSI para aplicar colores y estilos a la salida.

El proyecto cubre una amplia gama de capacidades de aplicaciones de terminal, incluyendo despacho de comandos jerárquicos para subcomandos anidados, generación automatizada de ayuda de uso y páginas man, e implementación de shell interactivo con prompts de usuario. También incluye infraestructura para inyección de dependencias a través de fábricas personalizadas, conversión de tipos basada en plugins y el procesamiento de archivos de argumentos externos.

Features

  • Command Line Argument Parsers - Implements a powerful parser that converts raw shell input into structured Java objects based on defined requirements.
  • Command Line Argument Parsing - Converts raw terminal input into strongly typed Java objects using named options and positional parameters.
  • Command-Line Interface Development - Provides a framework for building terminal applications that map arguments and options to strongly typed Java data.
  • Nested Command Structures - Creates hierarchical command structures that allow users to navigate complex toolsets through sub-levels.
  • Command Hierarchies - Executes nested command hierarchies based on user input using aliases and lazy instantiation.
  • AOT Metadata Generation - Produces the reflection and resource configuration files necessary to build standalone binaries with reduced startup overhead.
  • Annotation-Based Model Mapping - Implements a declarative model that maps command line options and parameters to strongly typed Java fields using annotations.
  • Hierarchical Command Dispatch - Supports hierarchical command dispatch for complex toolsets with nested subcommands.
  • CLI Command Mapping - Maps command line arguments and options directly to specific methods and fields for automated execution.
  • Reflection-Based Population - Uses reflection to populate typed fields in command objects from raw string arguments during the parsing phase.
  • Argument Grouping - Groups related options to enforce mutual exclusivity or require that certain parameters appear together.
  • CLI Type Converters - Transforms command line strings into complex data types using built-in converters or custom implementation classes.
  • Type Conversion Registries - Implements a registry of interchangeable converter classes to transform command line strings into complex Java types.
  • Native Binary Optimizations - Offers specific support for GraalVM native image compilation to create fast-starting standalone binaries.
  • CLI Documentation Generation - Automatically produces formatted usage help, man pages, and technical documentation from command definitions.
  • Recursive Argument File Parsing - Supports reading options from external files to bypass operating system command line length limits.
  • External Argument File Processing - Reads input from external files to bypass operating system limits on command line length.
  • Help Generators - Produces formatted help messages with synopses and option lists that adapt to terminal width.
  • Interactive CLI Prompts - Provides interactive CLI prompts for collecting user input, including secure fields for passwords.
  • Interactive Shells - Implements persistent interactive shell sessions combining command parsing with real-time tokenization.
  • Man Page Generation - Automatically generates Unix man pages and other documentation formats from CLI definitions.
  • Native AOT Compilation - Enables compilation into standalone binaries to eliminate runtime startup overhead and increase speed.
  • Shell Autocompletion Scripts - Generates shell autocompletion scripts to provide interactive suggestions for options and subcommands.
  • Shell Completion Generators - Generates context-sensitive shell autocompletion scripts for options and subcommands across various terminal shells.
  • Native Compilation Metadata - Produces reflection and resource configuration files necessary for ahead-of-time native binary compilation.
  • Native Image Compatibility Tools - Builds the command model at compile time to ensure full compatibility with native image compilers.
  • Executable Interface Frameworks - Enables the creation of command line tools that operate either within or independently of a runtime environment.
  • CLI - Restricts options by defining mutual exclusivity or specifying exact counts and ranges for parameters.
  • Terminal Color Formatting - Provides a dedicated ANSI terminal stylizer for applying colors and styles to text output.
  • Terminal Styling - Applies ANSI colors and styles to terminal output using markup codes for visual emphasis.
  • Java CLI Frameworks - Modern framework for building user-friendly CLI apps.
  • Scripting Tools - Framework for building feature-rich command-line interfaces.

Historial de estrellas

Gráfico del historial de estrellas de remkop/picocliGráfico del historial de estrellas de remkop/picocli

Búsqueda con IA

Explora más repositorios increíbles

Describe lo que necesitas en lenguaje sencillo: la IA clasifica miles de proyectos open-source curados por relevancia.

Start searching with AI

Alternativas open-source a Picocli

Proyectos open-source similares, clasificados según cuántas características comparten con Picocli.
  • fastapi/typerAvatar de fastapi

    fastapi/typer

    19,632Ver en GitHub↗

    This project is a Python framework for building command-line interfaces by converting standard functions into executable programs. It uses type hints to automatically infer and generate argument parsers, validation logic, and help documentation, allowing developers to define complex terminal applications through simple function signatures. The framework distinguishes itself through a decorator-driven registration system that enables the construction of hierarchical command trees. It supports dependency injection to manage shared state and runtime configuration across subcommands, and it utili

    Pythoncliclickpython
    Ver en GitHub↗19,632
  • cliutils/cli11Avatar de CLIUtils

    CLIUtils/CLI11

    4,322Ver en GitHub↗

    CLI11 is a header-only C++ library for parsing command line arguments and managing configuration files. It maps shell input to typed variables and supports the creation of complex command hierarchies. The library is distinguished by its support for nested subcommands with infinite depth and prefix matching. It integrates configuration management by allowing application settings to be loaded from TOML or INI files, with the ability to fall back to environment variables. The project provides a comprehensive set of tools for argument parsing, including flags and positional arguments, alongside

    C++clicli-parsercpp11
    Ver en GitHub↗4,322
  • commandlineparser/commandlineAvatar de commandlineparser

    commandlineparser/commandline

    4,817Ver en GitHub↗

    This library is a .NET command line parser for C# and F# that implements POSIX getopt conventions to map shell arguments into strongly typed objects. It provides a framework for building console applications that process Unix-style flags and options. The project features a routing system that directs program execution based on action-oriented verbs, supporting sub-commands and default actions. It includes an automatic help generator that produces localized usage instructions and formatted help screens based on the defined command options. The toolset covers argument parsing with strongly typ

    C#command-linedotnetdotnet-core
    Ver en GitHub↗4,817
  • clap-rs/clapAvatar de clap-rs

    clap-rs/clap

    16,528Ver en GitHub↗

    Clap is a command-line argument parser for Rust that enables developers to define complex interfaces through strongly-typed data structures. It functions as a comprehensive framework for building terminal applications, automating the transformation of raw string inputs into validated, type-safe code representations while simultaneously generating help documentation and usage statements. The library distinguishes itself by offering both a declarative, attribute-based approach and a fluent builder-pattern API, allowing for flexible interface construction. It includes a sophisticated validation

    Rustargument-parserargument-parsingcommand-line
    Ver en GitHub↗16,528
Ver las 30 alternativas a Picocli→

Preguntas frecuentes

¿Qué hace remkop/picocli?

picocli es un framework de desarrollo de interfaz de línea de comandos (CLI) y analizador de argumentos para aplicaciones basadas en JVM. Mapea opciones de línea de comandos y parámetros posicionales a métodos y campos de Java fuertemente tipados utilizando un modelo declarativo basado en anotaciones.

¿Cuáles son las características principales de remkop/picocli?

Las características principales de remkop/picocli son: Command Line Argument Parsers, Command Line Argument Parsing, Command-Line Interface Development, Nested Command Structures, Command Hierarchies, AOT Metadata Generation, Annotation-Based Model Mapping, Hierarchical Command Dispatch.

¿Qué alternativas de código abierto existen para remkop/picocli?

Las alternativas de código abierto para remkop/picocli incluyen: fastapi/typer — This project is a Python framework for building command-line interfaces by converting standard functions into… cliutils/cli11 — CLI11 is a header-only C++ library for parsing command line arguments and managing configuration files. It maps shell… commandlineparser/commandline — This library is a .NET command line parser for C# and F# that implements POSIX getopt conventions to map shell… clap-rs/clap — Clap is a command-line argument parser for Rust that enables developers to define complex interfaces through… urfave/cli — This is a framework for building structured terminal applications in Go. It provides the core components necessary to… spectreconsole/spectre.console — Spectre.Console is a .NET framework designed for building structured, feature-rich command-line applications. It…