使用picocli

问题描述

在我们的项目中,我们使用Lightbend Config / TypesafeConfig。

我可以使用java -jar运行程序。我的程序的配置也可以通过使用命令行参数来完成。

示例:

java -jar simpleclient.jar -Dservice.url="http://localhost:8123"

现在,我介绍了https://picocli.info/,以便为我的应用程序提供更好的命令行处理。

我现在面临的问题是,picocli不允许在标准配置中使用-D ...参数。

如何更改?

解决方法

当您说“ picocli不允许使用-D ...选项”时,我想您的意思是希望允许最终用户使用lock语法设置系统属性。将此类参数传递给应用程序时,应用程序需要使用这些值来设置系统属性,如下所示。

首先,用户可以通过将-Dkey=value参数传递给-Dkey=value进程而不是传递给jar中的主类来设置系统属性。在下面的调用中,系统属性是直接设置的,不会作为参数传递给应用程序:

java

第二,您可以在应用程序中定义一个java -Dservice.url="http://localhost:8123" -jar simpleclient.jar 选项来设置系统属性:

-D

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...