IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

avec Java Discussion :

Rien ne se passe avec exec.


Sujet :

avec Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    41
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 41
    Par défaut Rien ne se passe avec exec.
    Bonjour,
    tout est dit dans le titre... rien ne se passe pas meme pas un message d'erreur lorsque j'utilise la commande exec...
    voici mon code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
     
    try{
    String ch = jTextField7.getText();
    String s;
    String fin = "\\MARCHE\\IntGraph\\src\\intgraph\\MATLAB Compiler Runtime\\v710\\bin\\win32\\Encoursfin.exe";
    String ch1=ch.substring(0,ch.lastIndexOf("\\"));
    String hellolol=ch1+fin;
    System.out.println(hellolol);
     
    Runtime Run = null;
    Run = Runtime.getRuntime();
    Process Proc= Run.exec(hellolol);
          BufferedReader r1 = new BufferedReader(new InputStreamReader(Proc.getInputStream()));
                 while(( s =r1.readLine()) != null){
               System.out.println(s);
            }
            }
     
    	catch (Exception e){
    			System.out.println(e.toString());
    		}
    Si quelqu'un voit une erreur car la je ne comprends pas...

    Merci d'avance

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    342
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 342
    Par défaut
    je viens de tester

    copier collé du code je change
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    String ch = jTextField7.getText();
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    String ch = "c:\\lol\\";
    voila le retour

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    c:\lol\MARCHE\IntGraph\src\intgraph\MATLAB Compiler Runtime\v710\bin\win32\Encoursfin.exe
    java.io.IOException: Cannot run program "c:\lol\MARCHE\IntGraph\src\intgraph\MATLAB": CreateProcess error=3, Le chemin d'accès spécifié est introuvable
    petit astuce les \\ dans un path ce n'est pas utile utilise des / en plus c'est portable

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    41
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 41
    Par défaut
    petit astuce les \\ dans un path ce n'est pas utile utilise des / en plus c'est portable
    Merci je ne savais pas.

    Si j'ai bien compris il s'arete apres le blanc de MATLAB au lieu d'aller au bout du chemin.
    Comment puis-je faire pour qu'il ne s'arete pas au blanc et qu'il aille chercher le bon prog?

    Merci

  4. #4
    Membre chevronné
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    342
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 342
    Par défaut
    test de passé par un object File

  5. #5
    Membre chevronné
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    299
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2009
    Messages : 299
    Par défaut
    Pour qu'il ne s'arrête pas sur les espaces, encadre ton chemin d'accès par des "

    Correction ! ca ne marche qu'en ligne de commande et pas en exec...
    En fait quand tu mets un String en paramètre, il se sert des espaces pour gérer les différente portion de ta requete... pour éviter ce problème, tu peux donc utiliser ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Process Proc= Run.exec(new String[]{hellolol});
    Ici, au lieu d'utiliser les espaces, il utilise les différentes String dispo dans le tableau et du coup ca devrait marcher...
    Chez moi ca à l'air ok :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Exception in thread "main" java.io.IOException: Cannot run program "\MARCHE\IntGraph\src\intgraph\MATLAB Compiler Runtime\v710\bin\win32\Encoursfin.exe": error=2, No such file or directory

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    41
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 41
    Par défaut
    Je ne peux pas faire ca car mon chemin se trouve dans une variable String. J'ai essayé avec un String[] mais cela ne change rien le prog ne se lance pas.

  7. #7
    Membre chevronné
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    342
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 342
    Par défaut
    c'est bien ce que je me suis dit mais ça ne change rien

    par contre si je passe par un File qui représente le dossier cela marche bien

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
            try {
                String s;
                File f = new File("C:/MATLAB Compiler Runtime/v710/bin/win32/Encoursfin.exe");
                Runtime Run = null;
                Run = Runtime.getRuntime();
                Process Proc = Run.exec(f.getName(),null,f.getParentFile());
            } catch (Exception e) {
                System.out.println(e.toString());
            }

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Raccourcis clavier avec IE: , rien ne se passe
    Par bladerunners dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 10/06/2008, 11h05
  2. Rien Qd coupure réseau avec un client TClientSocket
    Par fba dans le forum Composants VCL
    Réponses: 3
    Dernier message: 18/02/2006, 13h27
  3. [vb.net][requete]rien ne se passe
    Par Alex35 dans le forum VB.NET
    Réponses: 3
    Dernier message: 23/11/2005, 13h00
  4. [FLASH MX2004] Rien ne se passe qd j'execute mon code
    Par adilou1981 dans le forum Flash
    Réponses: 2
    Dernier message: 27/07/2005, 23h31
  5. authentification user+pass avec pg_dump
    Par radium dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 26/07/2005, 12h47

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo