Hemos estado usando Dropwizard para crear un servicio HTTP. Por lo general, la sintaxis se vería así
java -jar {path_to_jar} server config.ymlEsto hace girar el servidor HTTP internamente usando ServerCommand de dropwizard. Pero, en cuanto al nuevo requisito, lo necesitamos para admitir otra entrada de línea de comando, preferiblemente la primera entrada de la ejecución. Decir,
java -jar {path_to_jar} path_to_file server config.yml (or at least) java -jar {path_to_jar} server config.yml path_to_fileSé que dropwizard admite la entrada de comandos personalizados como
java -jar {path_to_jar} hello -u worldEl truco aquí es que necesitamos admitir la entrada de comandos junto con el servidor HTTP, los documentos no cumplen con este requisito. ¿Es incluso posible con dropwizard?.
Nota: Agregar este parámetro a config.yml no es una opción. Como este parámetro se proporciona desde el exterior al que no queremos exponer nuestro archivo yml.
Dado que tiene control total sobre el método public void static main(String[] args) , puede realizar cualquier procesamiento adicional que desee allí y pasarlo a la aplicación.
Sin embargo, antes de seguir esa ruta, ¿se puede abordar su requisito utilizando variables ambientales en el archivo de configuración? http://www.dropwizard.io/1.1.0/docs/manual/core.html#environment-variables