2009-07-06 8 views
1

comment passer le paramètre dans un fichier batch en utilisant java runtime.exec().comment passer le paramètre dans le fichier séquentiel?

**** pp = Processus run.exec ("C: \ Program Files \ Apache Group \ Tomcat 4.1 \ bin \ RMIClientInvoker.bat C: \ Program Files \ Apache Group \ Tomcat 4.1 \ bin localhost date "); ****

lorsque j'utilise cette erreur de codage se produira.les paramètres sont le dernier fichier part.batch est RMIClientInvoker.bat. j'essaye en ligne de commande la même erreur a apparue mais je mets le double Qoutes au paramètre le bon o/p display.so n'importe qui aide comment donner le paramètre avec doubleQoutes.

Répondre

2

échapper aux guillemets doubles:

Process pp = run.exec("\"C:\Program Files\Apache Group\Tomcat 4.1\bin\RMIClientInvoker.bat\" \"C:\Program Files\Apache Group\Tomcat 4.1\bin\" localhost date"); 

La raison pour laquelle ce échoue est que exec d'exécution divise les arguments par des espaces (de la même manière que Java lorsque vous appelez votre méthode Main). Citant les arguments assurer qu'il traite l'ensemble de C: \ Program Files \ Apache Group \ Tomcat 4.1 \ bin \ RMIClientInvoker.bat comme un seul argument et ne pense pas que ce soit un ensemble de quatre arguments:

  • C: \ Program
  • Files \ Apache
  • Group \ Tomcat
  • 4.1 \ bin \ RMIClientInvoker.bat
Questions connexes