我们一直在使用dropwizard创建http服务。通常语法看起来像
java -jar {path_to_jar} server config.yml
这将使用dropwizard的servercommand在内部旋转http服务器。但是,对于新的需求,我们需要它优先支持另一个命令行输入,即运行的第一个输入。说,
java -jar {path_to_jar} path_to_file server config.yml
(or at least)
java -jar {path_to_jar} server config.yml path_to_file
我知道dropwizard支持自定义命令输入,比如
java -jar {path_to_jar} hello -u world
这里的技巧是我们需要支持命令输入和http服务器,documents不能满足这个需求。DropWizard能做到吗?是的。
注意:将此参数添加到config.yml不是一个选项。因为这个参数是从外部提供的,所以我们不想公开我们的yml文件。
最佳答案
因为您可以完全控制public void static main(String[] args)
方法,所以您可以在那里执行任何您想要的额外处理,并将其传递给应用程序。
但是,在您走这条路之前,您的需求是否可以使用配置文件中的环境变量来解决?http://www.dropwizard.io/1.1.0/docs/manual/core.html#environment-variables