Bonjour à tous,
Étant à l'origine développeur C++, j'ai un projet que je dois faire en Java. Je développe donc avec le SDK Eclipse, et j'ai quelques questions.

1. J'ai fait un petit projet qui compile (d'ailleurs ça compile automatiquement, c'est étrange ). Le problème, c'est qu'à l'exécution (Exécuter en tant que -> Application Java), j'ai une boîte de dialogue qui me demande de choisir l'application java parmi une foule de possibilités dont je ne comprends goutte (ex : Activation - sun.rmi.server, Compile - com.sun.org.apache.xalan.internal.xsltc.cmdline, Main - sun.tools.jar, ...).
Je ne sais pas quoi choisir, et si je choisis par défaut (Activation), ça me donne :
Activation.main: avertissement : système sun.rmi.activation.execPolicy
propriété non spécifiée et ExecPermissions/ExecOptionPermissions
non autorisés ; les tentatives d'activation suivantes risquent d'échouer en raison de la vérification des permissions
ExecPermission/ExecOptionPermission. Pour obtenir de la
documentation sur la configuration de la sécurité rmid, reportez-vous à :

http://java.sun.com/j2se/1.4/docs/to...aris/rmid.html
http://javasun.com/j2se/1.4/docs/too...in32/rmid.html

Activation.main : une exception s'est produite : java.rmi.server.ExportException: Port already in use: 1098; nested exception is:
java.net.BindException: Address already in use
java.rmi.server.ExportException: Port already in use: 1098; nested exception is:
java.net.BindException: Address already in use
at sun.rmi.transport.tcp.TCPTransport.listen(TCPTransport.java:310)
at sun.rmi.transport.tcp.TCPTransport.exportObject(TCPTransport.java:218)
at sun.rmi.transport.tcp.TCPEndpoint.exportObject(TCPEndpoint.java:393)
at sun.rmi.transport.LiveRef.exportObject(LiveRef.java:129)
at sun.rmi.server.UnicastServerRef.exportObject(UnicastServerRef.java:190)
at sun.rmi.server.Activation$ActivatorImpl.<init>(Activation.java:359)
at sun.rmi.server.Activation.init(Activation.java:231)
at sun.rmi.server.Activation.startActivation(Activation.java:202)
at sun.rmi.server.Activation.main(Activation.java:2040)
Caused by: java.net.BindException: Address already in use
at java.net.PlainSocketImpl.socketBind(Native Method)
at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:359)
at java.net.ServerSocket.bind(ServerSocket.java:319)
at java.net.ServerSocket.<init>(ServerSocket.java:185)
at java.net.ServerSocket.<init>(ServerSocket.java:97)
at sun.rmi.transport.proxy.RMIDirectSocketFactory.createServerSocket(RMIDirectSocketFactory.java:27)
at sun.rmi.transport.proxy.RMIMasterSocketFactory.createServerSocket(RMIMasterSocketFactory.java:333)
at sun.rmi.transport.tcp.TCPEndpoint.newServerSocket(TCPEndpoint.java:649)
at sun.rmi.transport.tcp.TCPTransport.listen(TCPTransport.java:299)
... 8 more
Si je choisis Main (logique...), cela donne en sortie :
Utilisation : jar {ctxui}[vfm0Me] [fichier-jar] [fichier-manifeste] [point-entrée] [-C rép] fichiers...
Options :
-c crée une nouvelle archive
-t affiche la table des matières de l'archive
-x extrait les fichiers nommés (ou tous les fichiers) de l'archive
-u met à jour l'archive existante
-v génère une version détaillée d'une sortie standard
-f spécifie le nom du fichier archive
-m inclut les informations de manifeste à partir du fichier de manifeste spécifié
-e spécifie le point d'entrée d'une application en mode autonome
intégrée à un fichier JAR exécutable
-0 stockage uniquement, pas de compression ZIP
-M ne crée pas de fichier manifeste pour les entrées
-i génère les informations d'index des fichiers jar spécifiés
-C passe au répertoire spécifié et inclut le fichier suivant
Si l'un des fichiers est un répertoire, celui-ci est traité récursivement.
Les noms du fichier manifeste, du fichier archive et du point d'entrée sont
spécifiés dans le même ordre que celui des indicateurs m, f et e.

Exemple 1 : pour archiver deux fichiers de classe dans une archive intitulée classes.jar :
jar cvf classes.jar Foo.class Bar.class
Exemple 2 : pour utiliser un fichier manifeste existant 'monmanifeste', puis archiver tous les
fichiers du répertoire foo/ dans 'classes.jar' :
jar cvfm classes.jar monmanifeste -C foo/ .