gen-proxy-config [-hV] [--[no-]exit] [-c=<factoryClass>] [-o=<outputFile>] [-i=<interfaces>]…​ [@<filename>…​] [<classes>…​]


Generates a JSON file with the interface names to generate dynamic proxy classes for in the native image. The generated JSON file can be passed to the -H:DynamicProxyConfigurationFiles=/path/to/proxy-config.json option of the native-image GraalVM utility. See


-i, --interface=<interfaces>

Other fully qualified interface names to generate dynamic proxy classes for in the native image.This option may be specified multiple times with different interface names. Specify multiple comma-separated interface names for dynamic proxies that implement multiple interfaces.

-c, --factory=<factoryClass>

Optionally specify the fully qualified class name of the custom factory to use to instantiate the command class. When omitted, the default picocli factory is used.

-o, --output=<outputFile>

Output file to write the configuration to. If not specified, the configuration is written to the standard output stream.


Specify --exit if you want the application to call System.exit when finished. By default, System.exit is not called.

-h, --help

Show this help message and exit.

-V, --version

Print version information and exit.



One or more argument files containing options.


Zero or more @Command interfaces or classes with @Command interface subcommands to generate a Graal SubstrateVM proxy-config for.

Exit Codes (if enabled with --exit)


Successful program execution.


A runtime exception occurred while generating man pages.


Usage error: user input for the command was incorrect, e.g., the wrong number of arguments, a bad flag, a bad syntax in a parameter, etc.


java -cp "myapp.jar;picocli-4.5.2.jar;picocli-codegen-4.5.2.jar" picocli.codegen.aot.graalvm.DynamicProxyConfigGenerator my.pkg.MyClass