2010-02-11 4 views
0

Salut Je veux écrire une application client/serveur avec java rmi, que le client a la possibilité d'exécuter le lecteur multimédia de la fenêtre dans le côté serveur. Je l'ai utilisé la classe ProcessBuilder comme ceci:aide pour résoudre des problèmes dans une affectation java rmi

ProcessBuilder process= new ProcessBuilder(“mwplayer”).start(); 

mais il ne fonctionne pas. Il provoque ces exceptions:

java.io.IOException: Cannot run program "mwplayer": CreateProcess error=2, The system cannot find the file specified 
    at java.lang.ProcessBuilder.start(Unknown Source) 
    at server.ServerFrame.mediaPlayer(ServerFrame.java:135) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 
    at java.lang.reflect.Method.invoke(Unknown Source) 
    at sun.rmi.server.UnicastServerRef.dispatch(Unknown Source) 
    at sun.rmi.transport.Transport$1.run(Unknown Source) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at sun.rmi.transport.Transport.serviceCall(Unknown Source) 
    at sun.rmi.transport.tcp.TCPTransport.handleMessages(Unknown Source) 
    at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(Unknown Source) 
    at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(Unknown Source) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) 
    at java.lang.Thread.run(Unknown Source) 
Caused by: java.io.IOException: CreateProcess error=2, The system cannot find the file specified 
    at java.lang.ProcessImpl.create(Native Method) 
    at java.lang.ProcessImpl.<init>(Unknown Source) 
    at java.lang.ProcessImpl.start(Unknown Source) 
    ... 16 more 

Comment puis-je résoudre ce problème? Pouvez-vous m'aider avec? Merci beaucoup

Répondre

1

Le message d'erreur vous indique que le ProcessBuilder ne peut pas voir un fichier nommé mwplayer.

+0

mais il existe dans mon système !!! alors comment puis-je ru ru? – samuel

+1

Comme l'a suggéré @Nate Heinrich, essayez de fournir le chemin complet de 'mwplayer'. –

1

Essayez peut-être de spécifier le chemin d'accès complet à mwplayer, au lieu du nom binaire. J'imagine qu'il n'y a pas de variables d'environnement dans le contexte de votre appel.

1

N'est-ce pas appelé 'wmplayer', avec le m et le w permuté?