2009-11-06 14 views
9

¿Hay alguna manera de crear un archivo JAR que contenga algunos argumentos que se pasan a la clase principal? (No importa si precede o agrega los argumentos a posibles argumentos de línea de comandos.)Argumentos predeterminados en manifiesto JAR

Sé que podría simplemente escribir una clase de arranque y especificar esto como clase principal (llamando a la clase principal real con los argumentos), pero esto parece un poco incomodo

+1

relacionadas pregunta/respuestas: http://stackoverflow.com/q/212539/931379 – Pursuit

Respuesta

7

Según mi leal saber y entender, no. Tendrás que hacer ese tipo de cosas tú mismo, en código.

Mucha gente considera que es útil escribir una pequeña clase principal que configura un entorno y luego actúa como un ClassLoader para el programa principal "real". Típicamente, tales pre-main juegan con el classpath de su aplicación, pero su tipo de problema es algo más que podría resolverse así.

+3

Creación de un cargador de clases es una exageración. Puede llamar a OtherClass.main (String []) desde la principal que agrega los argumentos predeterminados. –

+2

Tienes razón, Laurence. No se me había ocurrido que este es un caso degenerado de lo que se suelen usar los cargadores de clases personalizados. –

1

Diseñaría la aplicación para tener las configuraciones predeterminadas integradas, y anularía las predeterminadas si el usuario proporciona diferentes argumentos.

En su configuración, ¿qué sucede si el usuario da argumentos que son diferentes? ¿No terminaría con múltiples argumentos similares y tendría que manejarlo torpemente?

6
+2

+1 porque en realidad está respondiendo la pregunta en lugar de proponer un cambio. –

+1

Sospecho que esta es la respuesta que estoy buscando. Desafortunadamente, uno de los enlaces ahora está muerto y el otro está vinculado a una discusión prolija y mal formateada que podría contener una respuesta. – Pursuit

Cuestiones relacionadas