问题标签 [picocli]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
154 浏览

guice - 使用 Guice 和 lombok 时使用 picocli 生成文档

我使用 picocli(4.5.2)、lombok 和 guice 创建了一个 cli。我所有的命令类都有私有的最终字段(服务),它们是用 lombok 和 guice 初始化的。例如:

我也有 picocli 文档中建议的 GuiceFactory 。

当我尝试使用 ManPageGenerator 生成文档时(使用以下文档

我看到这个错误:

有没有办法解决这个问题?

0 投票
1 回答
1121 浏览

micronaut - 如何将外部 application.yml 加载到使用 Micronaut Picocli 开发的应用程序中?

  • 爪哇:11.0.7
  • 微航海:2.1.2
  • Micronaut 个人资料:cli-app

我在 cli-app 配置文件中有一个使用 micronaut 框架开发的应用程序。我的应用使用了Hibernate和GORM包,所以在application.yml中有相关配置

在默认配置中,micronaut 从 src/main/resources 加载 application.yml。

如果我希望我的应用程序从以下参数加载 application.yml:

我应该怎么做 ?谢谢

0 投票
2 回答
218 浏览

kotlin - 如何指定默认子命令?

当用户没有提供子命令时,有没有办法打印帮助消息?

以下不起作用,因为它运行没有实现的可调用。

0 投票
1 回答
63 浏览

picocli - picocli CLI 解析器:在渲染输出时隐藏 Java 变量名

我正在使用picocli来显示我的命令行应用程序的用法。我无法达到的是隐藏出现在打印输出中的 Java 变量的名称,从我的角度来看,它看起来很丑陋。

这是我的配置CommandLine.Option

这就是它的呈现方式:

如您所见,Java 变量的名称出现在等号之后:<xxx>

我想隐藏它,像这样:

我检查了 API,但看不到与此相关的任何内容。有没有办法关掉它?

0 投票
1 回答
209 浏览

java - 如何使用 picocli 处理多种类型的选项

我正在将现有应用程序转换为使用 picocli。现有选项之一如下所示:

这允许选项是一个正整数或几个特殊字符串之一。现有代码将其视为字符串,如果它不是特殊字符串之一,则将其传递给Integer.parseInt.

当然,我可以用 picocli 做同样的事情,但我想知道是否有更好的方法来处理这个问题。例如,允许多个字段用于同一个选项,并根据传递的内容填写适当的字段?这也可能允许我对可能的字符串选项使用枚举。

0 投票
1 回答
102 浏览

picocli - PicoCLI :我如何使用@ArgGroup 作为方法?

我想为以下代码段提供互斥的命令选项:

如果我将@ArgGroup 用于类字段,那么它可以工作,但我想为方法实现相同的效果。

0 投票
1 回答
855 浏览

java - 无法使用 Picocli 编译

我是一名开发学生,我很想在我的项目中使用 Picocli,不幸的是我不明白如何使用 Picocli 进行编译,我尝试按照此处给出的说明 https://picocli.info/或此处 https://picocli .info/quick-guide.html但编译步骤并不详细。我没有使用 Gradle 或 Maven,但它们并没有真正按要求列出。

这是它尝试编译 picocli.info 网页中给出的校验和示例的方式:

然后我简单地复制粘贴这个给定的命令: https ://picocli.info/#_running_the_application

并得到以下结果:

我尝试自己编译所有内容,然后像这样添加 .jar:

但随后错误输出如下所示:

女巫我不明白,因为我添加了依赖项。

我错过了什么?

提前致谢

0 投票
1 回答
82 浏览

java - 为什么 Gradle 不使用 MRJAR 的 module-info.class?

我目前正在使用 picocli 创建命令行应用程序。但是,Gradle 拒绝使用以下错误消息构建它。

这是我的 Gradle 依赖项:

Picocli 作为带有 under 的 MRJAR 托管module-info.classMETA-INF\versions\9但 Gradle 似乎没有使用该文件。为什么是这样?

0 投票
1 回答
168 浏览

picocli - PicoCLI : 使用部分中的选项顺序

我已将命令的 sortOptions 设置为 false,但我仍然在“用法”部分中看到命令的选项按排序顺序排列。我想看看他们的申报顺序。

示例代码

输出

期待

0 投票
1 回答
63 浏览

java - 如何使用至少一个选项创建命令

我想创建一个命令,允许用户指定一个可用选项来执行命令。例如,这里是服务列表,命令是状态。用户可以针对部分服务发布命令“status --list Scarlet garnet cardinal”,或者针对完整服务发布命令“ status --all” 。我已经实现了以下内容:

它可以工作,但是有一个错误,也就是说,如果用户只提供命令“状态”而没有任何进一步的参数,则它被认为是有效的。我相信会发生这种情况,因为这两个选项都是布尔值。我们如何纠正这一点以提供至少一个可选选项?