J'ai un problème pour démarrer le serveur récupéré ici. Je suis sous macOS.
Après avoir décompressé le fichier .jar et modifier le .bat comme expliqué ici.
Le serveur m'afficher les erreurs suivante au démarrage :
Code : Tout sélectionner
./runOnce.bat: line 1: -J-Djava.rmi.server.useCodebaseOnly=false: command not found
./runOnce.bat: line 2: -cp: command not found
MacBook-Pro-Ludovic:cours_rmi_mars_2017 ludovic$ Syntaxe : java [-options] class [args...]
(pour l'exécution d'une classe)
ou java [-options] -jar jarfile [args...]
(pour l'exécution d'un fichier JAR)
où les options comprennent :
-d32 utilisez le modèle de données 32 bits s'il est disponible
-d64 utilisez le modèle de données 64 bits s'il est disponible
-server pour sélectionner la machine virtuelle "server"
La machine virtuelle par défaut est server,
car vous exécutez une machine de classe de serveur.
-cp <class search path of directories and zip/jar files>
-classpath <class search path of directories and zip/jar files>
Liste de répertoires, d'archives JAR et
d'archives ZIP séparés par des :, dans laquelle rechercher les fichiers de classe.
-D<name>=<value>
définition d'une propriété système
-verbose:[class|gc|jni]
activation de la sortie en mode verbose
-version impression de la version du produit et fin de l'opération
-version:<value>
exécution de la version spécifiée obligatoire
-showversion impression de la version du produit et poursuite de l'opération
-jre-restrict-search | -no-jre-restrict-search
inclusion/exclusion des environnements JRE privés de l'utilisateur dans la recherche de version
-? -help impression du message d'aide
-X impression de l'aide sur les options non standard
-ea[:<packagename>...|:<classname>]
-enableassertions[:<packagename>...|:<classname>]
activation des assertions avec la granularité spécifiée
-da[:<packagename>...|:<classname>]
-disableassertions[:<packagename>...|:<classname>]
désactivation des assertions avec la granularité spécifiée
-esa | -enablesystemassertions
activation des assertions système
-dsa | -disablesystemassertions
désactivation des assertions système
-agentlib:<libname>[=<options>]
chargement de la bibliothèque d'agent natif <libname>, par exemple -agentlib:hprof
voir également, -agentlib:jdwp=help et -agentlib:hprof=help
-agentpath:<pathname>[=<options>]
chargement de la bibliothèque d'agent natif via le chemin d'accès complet
-javaagent:<jarpath>[=<options>]
chargement de l'agent du langage de programmation Java, voir java.lang.instrument
-splash:<imagepath>
affichage de l'écran d'accueil avec l'image spécifiée
Voir http://www.oracle.com/technetwork/java/javase/documentation/index.html pour plus de détails.
java.rmi.server.ExportException: Port already in use: 1099; nested exception is:
java.net.BindException: Address already in use
at sun.rmi.transport.tcp.TCPTransport.listen(TCPTransport.java:341)
at sun.rmi.transport.tcp.TCPTransport.exportObject(TCPTransport.java:249)
at sun.rmi.transport.tcp.TCPEndpoint.exportObject(TCPEndpoint.java:411)
at sun.rmi.transport.LiveRef.exportObject(LiveRef.java:147)
at sun.rmi.server.UnicastServerRef.exportObject(UnicastServerRef.java:208)
at sun.rmi.registry.RegistryImpl.setup(RegistryImpl.java:152)
at sun.rmi.registry.RegistryImpl.access$100(RegistryImpl.java:73)
at sun.rmi.registry.RegistryImpl$2.run(RegistryImpl.java:128)
at sun.rmi.registry.RegistryImpl$2.run(RegistryImpl.java:125)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessController.doPrivileged(AccessController.java:713)
at sun.rmi.registry.RegistryImpl.<init>(RegistryImpl.java:125)
at sun.rmi.registry.RegistryImpl$5.run(RegistryImpl.java:383)
at sun.rmi.registry.RegistryImpl$5.run(RegistryImpl.java:381)
at java.security.AccessController.doPrivileged(Native Method)
at sun.rmi.registry.RegistryImpl.main(RegistryImpl.java:380)
Caused by: java.net.BindException: Address already in use
at java.net.PlainSocketImpl.socketBind(Native Method)
at java.net.AbstractPlainSocketImpl.bind(AbstractPlainSocketImpl.java:382)
at java.net.ServerSocket.bind(ServerSocket.java:375)
at java.net.ServerSocket.<init>(ServerSocket.java:237)
at java.net.ServerSocket.<init>(ServerSocket.java:128)
at sun.rmi.transport.proxy.RMIDirectSocketFactory.createServerSocket(RMIDirectSocketFactory.java:45)
at sun.rmi.transport.proxy.RMIMasterSocketFactory.createServerSocket(RMIMasterSocketFactory.java:345)
at sun.rmi.transport.tcp.TCPEndpoint.newServerSocket(TCPEndpoint.java:666)
at sun.rmi.transport.tcp.TCPTransport.listen(TCPTransport.java:330)
... 15 more
Code : Tout sélectionner
rmiregistry & -J-Djava.rmi.server.useCodebaseOnly=false
java & -cp . ServeurWeb8086