我的数据库恢复程序出了问题,这个错误隐藏了我的快乐:
Java . io . io异常:无法运行程序“MySQL”:CreateProcess错误=2,系统找不到指定的文件
要恢复的文件位于D:/Backup/backup.sql当我从这个路径浏览并打开文件时,当我单击恢复按钮时出现错误。请帮我解决这个问题。下面是我的JFileChooser
用于浏览文件位置的代码。
browseButton.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent event){
String recPath = "";
JFileChooser fc = null;
if (fc == null) {
fc = new JFileChooser();
fc.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);
fc.setAcceptAllFileFilterUsed(false);
}
int returnVal = fc.showDialog(null, "Open");
if (returnVal == JFileChooser.APPROVE_OPTION) {
File file = fc.getSelectedFile();
recPath = file.getAbsolutePath();
sourceField.setText(recPath);
}
}
}
);
recoveryButton.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent event){
try{
String databaseName ="jdbc:mysql://localhost:3306/myDB";
String userName ="abc";
String password ="123";
String source = sourceField.getText();
int processComplete;
String[] executeCmd = new String[]{"mysql",databaseName, "--user=" + userName, "--password=" + password, "-e", "source"+source};
//sava the command in a array
Process runtimeProcess = Runtime.getRuntime().exec(executeCmd);// execute the command
processComplete = runtimeProcess.waitFor();// get the result to variable
if(processComplete==1){
JOptionPane.showMessageDialog(null, "Restore Failed");
}
else if(processComplete==0){
JOptionPane.showMessageDialog(null, "Restore Completed");
}
}
catch(Exception ex){
JOptionPane.showMessageDialog(null,ex);
}
}
}
);
您可以在环境路径变量中添加“\MySQL的完整路径”,例如:“C:\ProgramFiles\MySQL\MySQL Server 5.7\bin”
这个答案在2018/06/07是正确的...
String[] executeCmd = new String[]{"\FULL PATH HERE\mysql",databaseName, "--user=" + userName, "--password=" + password, "-e", "source"+source};
一个例子将是:
String[] restoreCmd = new String[] { "C:\\Program Files\\MySQL\\MySQL Server 5.7\\bin\\mysql ", bd,"--user=" + usuario, "--password=" + password, "-e", "source " + pathToFile }
您应该将路径添加到“mysql”到“Path”变量中或在代码中指定完整路径:
尝试
String[] executeCmd = new String[]{"\FULL PATH HERE\mysql",databaseName, "--user=" + userName, "--password=" + password, "-e", "source"+source};
而不是
String[] executeCmd = new String[]{"mysql",databaseName, "--user=" + userName, "--password=" + password, "-e", "source"+source};
我正在Tomcat上运行的< code>Servlet类的< code>doPost()方法中执行一个命令。 该命令是: 当我在windows控制台上运行它时,该命令运行良好,但在servlet中执行时,它会抛出此错误。 java.io.IOException:无法运行程序"plink": CreateProcess error=2,系统找不到指定的文件 我尝试通过 以及通过 < code > p
我正在开发一个命令行java应用程序,它必须运行一个名为<code>gradlew的程序。bat assemblererelease在此目录中: 所以我做了这个: 该文件在该目录中100%确定,它在linux中运行完美,但在Windows上不工作!我遇到了这个错误: java.io.IOException:无法运行程序“gradlew.bat”(位于目录“C:\ Users \ administr
当我运行下面的代码时,我得到错误: 无法运行程序“query . sh”:CreateProcess error = 2,系统找不到指定的文件,请检查以下代码 我不确定如何诊断其故障的根本原因。我应该怎么做才能解决问题?
我只是试着运行一个shell脚本,它在Eclipse中我的项目目录下。 获取此错误: java.io.IOException:无法运行程序"脚本/test.sh": CreateProcess error=2,系统找不到指定的文件
我有一个名为bg.jar的jar文件,它打印一些数字。我想从java程序调用bg.jar。我使用了这个代码 我添加bg.jar在库文件夹的bg1项目.但是当我运行bg1.class它给我这个错误: e: java.io.IOException: 無法運行程程 “java -jar bg.jar”: CreateProcess error=2, 系統找不到指定的檔案 我怎么能把bg.jar从bg1调
问题内容: 我正在用Java编写一个程序,该程序将执行winrar并将一个供我使用的jar文件解压缩到该文件夹中。我的Java代码是这样的 执行此操作时,出现此错误 谁能告诉我为什么会遇到这样的问题。为了使其起作用,我需要在代码中进行哪些更改? 问题答案: 假设位于中,则能够找到它,如果没有,则需要提供到它的完全限定路径,例如,假设已安装在其中,则需要使用类似… 就个人而言,我建议您使用它,因