将参数(带空格)传递给java程序的批处理文件

时间:2014-12-02 05:11:57

标签: java windows batch-file

在我的程序中,我想在.bat文件的帮助下使用一些参数执行jar。

.bat文件

%6 -jar %5 -u %1 -p %2 -dbbkp %3 > %4

java程序,将参数传递给上面的.bat文件

String jarPath=request.getSession().getServletContext().getRealPath("")+"/OES-SmartClient/OES-SmartClient.jar";

String outputfilepath=request.getSession().getServletContext().getRealPath("")+"/resources/WebFiles/OESFiles/DBBackupStatus.txt";

 String jrePath="C:\\Program Files (x86)\\Java\\jre7\\bin\\java";

 String batfilePath = request.getSession().getServletContext().getRealPath("")+"/WEB-INF/classes/OESDBBackup.bat";
        String BackupLocation = request.getSession().getServletContext().getRealPath("")+"/WEB-INF/classes/BackupLocation";

        batfilePath="\""+batfilePath+"\"";
        jarPath="\""+jarPath+"\"";
        outputfilepath="\""+outputfilepath+"\"";
        BackupLocation="\""+BackupLocation+"\"";

    process = Runtime.getRuntime().exec(batfilePath +" "+ dbUser.getUserName()+" "+ dbUser.getPassword()+" "+BackupLocation+" "+outputfilepath+" "+jarPath+" "+jrePath);

以上代码用于进行数据库备份。

当我运行此程序时,它没有给出错误,但也无法进行数据库备份。

当我给BackupLocation这样的“C:\ Sm \”(没有空格参数)时,它正常工作。

请有人建议我如何用空格传递我的参数。

0 个答案:

没有答案