Passer des argument avec le manifeste java

TIGER -  
kij_82 Messages postés 4089 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,
Salut à tous.
J'utilise Jade et le java pour le développement d'un logiciel de recherche d'information par agent,
et pour lancer un agent il faut utiliser cette commande
java jade.Boot -container AgIn:rii.AgIn

Le problème c'est que je veux lancer les agents en cliquant sur un fichier .jar alors que Main-Class dans le ficher manifeste se semble ne permetter pas de passer le nom d'agent comme un argument.

le contenu de fichier manifeste est comme suit :

Created-By: anonyme Inc.
Class-Path: lib/jade.jar lib/iiop.jar lib/Base64.jar lib/jadeTools.jar lib/http.jar lib/MyTools.jar lib/jdic.jar lib/jdic_native_applet.jar lib/jdic_stub_windows.jar
SplashScreen-Image: logo.png
Main-Class: jade.Boot 


Comment je puisse passer cet argument "-container AgIn:rii.AgIn" à la classe jade.Boot en n'utlisant que le fichier manifeste ?

merci d'avance.
A voir également:

1 réponse

kij_82 Messages postés 4089 Date d'inscription   Statut Contributeur Dernière intervention   857
 
Bonjour,

Ce n'est pas possible.
De toute manière, pourquoi voudrais-tu passer des arguments dans le MANIFEST ?

Parce que tu souhaite donner des arguments au programme lorsque l'utilisateur lance ton JAR ? Dans ce cas là, ça veut dire que les arguments en question ne dépendent pas de l'utilisateur, donc tu peux peut-être les inclure directement dans ton programme ?

Une autre solution serait de passer par un fichier de configuration dans lequel tu as des couples variable = valeur.

Enfin, tu peux toujours passer par un script de lancement, qui lui même lancera la classe sous forme de ligne de commande tout en passant des paramètres.
Exemple de commande :
java -jar myjar Argument à passer à la "main classe"

Il te reste ensuite à prendre en compte dans ta méthode main de ta classe main, le traitement des arguments passé à ta classe pour les utiliser.
0