2009-11-06 8 views
9

Existe-t-il un moyen de créer un fichier JAR contenant certains arguments transmis à la classe principale? (Je sais que je pourrais simplement écrire une classe d'amorçage et la spécifier comme classe principale (en appelant la classe principale réelle avec les arguments), mais je sais que je pourrais simplement écrire une classe d'amorçage et la spécifier comme classe principale. Cela semble un peu gênant.Arguments par défaut dans le manifeste JAR

+1

question/réponses connexes: http://stackoverflow.com/q/212539/931379 – Pursuit

Répondre

7

Vous devrez faire ce genre de chose vous-même, dans le code.

Beaucoup de gens trouvent utile d'écrire une petite classe principale qui configure un environnement, puis agit comme un ClassLoader pour le «vrai» programme principal. Typiquement, de telles pré-séries manipulent le classpath de leur application, mais votre genre de problème est quelque chose d'autre qui pourrait être résolu comme ceci.

+3

Création d'un ClassLoader est surpuissant. Vous pouvez simplement appeler OtherClass.main (String []) de la main qui ajoute les arguments par défaut. –

+2

Vous avez raison, Laurence. Il ne m'était pas venu à l'esprit que c'est un cas dégénéré de ce que les chargeurs de classe personnalisée sont habituellement utilisés. –

1

Je voudrais concevoir l'application pour avoir intégré les paramètres par défaut, et remplacer les valeurs par défaut si l'utilisateur donne des arguments différents.

Dans votre configuration, que se passe-t-il si l'utilisateur donne des arguments différents? Ne se retrouverait pas avec plusieurs arguments similaires et devrait gérer maladroitement cela? Pour le meilleur de ma connaissance, non, je veux dire: