Runtime.getRuntime().exec() + mysqldump

Alguém saberia me dizer porque o seguinte código não está dando certo ?

[code] try{
if(verificador_enderecoServidor==true){
if(exists==false){
Runtime.getRuntime().exec(“mkdir “+destinoBackup);
}
if(verificador_nomeBanco==false|verificador_nomeTable==false){
Runtime.getRuntime().exec(“mysqldump -h “+enderecoServidor+” -u “+usuarioBanco+” --password=”+senhaBanco+” --all-databases> “+destinoBackup+””+nomeBackup);
}
if(verificador_nomeBanco==true|verificador_nomeTable==false){
Runtime.getRuntime().exec(“mysqldump -h “+enderecoServidor+” -u “+usuarioBanco+” --password=”+senhaBanco+" “+nomeBanco+” >"+destinoBackup+""+nomeBackup);
}
if(verificador_nomeBanco==true|verificador_nomeTable==true){
Runtime.getRuntime().exec(“mysqldump -h “+enderecoServidor+” -u “+usuarioBanco+” --password=”+senhaBanco+" “+nomeBanco+” “+nomeTable+”>"+destinoBackup+""+nomeBackup);
}
}
else{

        }
    } 
    catch (IOException e) {  
        System.out.print(e);  
    }[/code]

De antemão obrigado a todos

EDIT: Com não dando certo quero dizer que ele simplesmente não gera o arquivo sql

pra facilitar segue versão mais completa

[code] public void backup(){
//variaveis necessárias ao comando sql
String enderecoServidor=enderecoServidorTextField.getText();
String nomeBanco=nomeBancoTextField.getText();
String nomeTable=nomeTableTextField.getText();
String destinoBackup=arquivarEmTextField.getText();
String usuarioBanco = usuarioBancoTextField.getText();
String senhaBanco = senhaBancoTextField.getText();

    //String com horário do backup
    int hora = Calendar.HOUR;
    int minuto = Calendar.MINUTE;
    int segundo = Calendar.SECOND;
    String horario = hora+"_"+minuto+"_"+segundo;
    
    //String com a data do backup
    int dia = Calendar.DAY_OF_MONTH;
    int mes = Calendar.MONTH+1;
    int ano = Calendar.YEAR;
    String data = dia+"_"+mes+"_"+ano;  
    
    //Nome do arquivo a ser gerado
    String nomeBackup ="Backup - "+data+" - "+horario+".sql";
    
    //verifia se local de destino do backup existe
    boolean exists = (new File(enderecoServidor)).exists();
    verificaTextFields();
    try{
        if(verificador_enderecoServidor==true){
            if(exists==false){
                Runtime.getRuntime().exec("mkdir "+destinoBackup);
            }
            if(verificador_nomeBanco==false|verificador_nomeTable==false){
                Runtime.getRuntime().exec("mysqldump -h "+enderecoServidor+" -u "+usuarioBanco+" --password="+senhaBanco+" --all-databases> "+destinoBackup+"/"+nomeBackup);
            }
            if(verificador_nomeBanco==true|verificador_nomeTable==false){
                Runtime.getRuntime().exec("mysqldump -h "+enderecoServidor+" -u "+usuarioBanco+" --password="+senhaBanco+" "+nomeBanco+" >"+destinoBackup+"/"+nomeBackup);
            }
            if(verificador_nomeBanco==true|verificador_nomeTable==true){
                Runtime.getRuntime().exec("mysqldump -h "+enderecoServidor+" -u "+usuarioBanco+" --password="+senhaBanco+" "+nomeBanco+" "+nomeTable+">"+destinoBackup+"/"+nomeBackup);
            }
        }
        else{
          
        }
    } 
    catch (IOException e) {  
        System.out.print(e);  
    }  
}[/code]