Partage
  • Partager sur Facebook
  • Partager sur Twitter

Runtime.getruntime() : programme introuvable;

    4 novembre 2008 à 15:07:00

    Bonjour à tous,

    Suite à un soucis d'éxecution de script ANT avec JAVA toujours non résolu, j'ai décidé d'utiliser une autre méthode : utiliser la class Runtime.
    Voilà le code :
    try {
       Runtime.getRuntime().exec(new String[] {"ant"});
    } 
    catch (IOException e) {
         e.printStackTrace();
    }
    



    Le probléme est que malgrés la modification du la variable path de windows, j'ai toujours ce message d'erreur :
    Cannot run program "ant": CreateProcess error=2, Le fichier spécifié est introuvable
    
    .
    Pourtant l'éxecution sous l'invite de commande de [B]ant[/B] fonctionne parfaitement.

    Pour contourner cela temporairement j'ai donc indiqué le chemin exact de la commande ant :

    try {
         Runtime.getRuntime().exec(new String[] {"\"C:/Program Files/Apache Software Foundation/apache-ant-1.7.1/bin/ant\""});
    } 
    catch (IOException e) {
         e.printStackTrace();
    }
    



    mais cette fois c'est un autre message d'erreur qui apparait
    Cannot run program ""C:/Program Files/Apache Software Foundation/apache-ant-1.7.1/bin/ant"": CreateProcess error=193, %1 n'est pas une application Win32 valide
    
    .

    J'aimerais donc savoir comment resoudre ces deux problémes.

    Merci beaucoup.
    • Partager sur Facebook
    • Partager sur Twitter
      5 novembre 2008 à 21:19:55

      try {
           Runtime.getRuntime().exec(new String[] {"\"C:/Program Files/Apache Software Foundation/apache-ant-1.7.1/bin/ant\""});
      } 
      catch (IOException e) {
           e.printStackTrace();
      }
      


      Je comprend pas vraiment ton new String. Soit je me trompe mais tu créé un tableauet tu y met dedans une chaine bizarre avec 4 ".
      A quoi sert ton "\" ? Pourquoi 4 " ?

      Sinon pour le chemin sous Windows ce sont des \ et pas des /.
      • Partager sur Facebook
      • Partager sur Twitter
        5 novembre 2008 à 22:45:01

        Citation : CARNIBAL

        Sinon pour le chemin sous Windows ce sont des \ et pas des /.


        Il se trouve qu'on peut utiliser les deux (au choix).
        • Partager sur Facebook
        • Partager sur Twitter
          6 novembre 2008 à 11:36:39

          Ah ? Ben merci, c'est bon à savoir
          • Partager sur Facebook
          • Partager sur Twitter
            6 novembre 2008 à 12:06:26

            et si tu mets

            "\"C:\\Program Files\\Apache Software Foundation\\apache-ant-1.7.1\\bin/ant\""

            ça fait pareil?
            • Partager sur Facebook
            • Partager sur Twitter

            Runtime.getruntime() : programme introuvable;

            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
            • Editeur
            • Markdown