2 votes

Java commence à exécuter une commande dans un nouveau terminal (mac osx) - process builder n'exécute pas osascript correctement

J'essaie de créer un nouveau processus dans une nouvelle fenêtre. Je suis cet exemple pour la commande Exécution d'une commande dans une nouvelle fenêtre Terminal Mac OS X (en utilisant Java Process builder). J'ai imprimé la commande résultante et elle fonctionne si je la tape manuellement, mais elle ne démarre pas la nouvelle fenêtre lorsque je l'exécute.

Quelque chose d'aussi simple que osascript -e 'tell application "Terminal" to do script "java -jar test.jar"' n'évoque rien

Exemple de code :

    try {
        ProcessBuilder pb = new ProcessBuilder("osascript", "-e",
            "'tell application \"Terminal\" to do script \"java -jar test.jar\"'");
        Process p = pb.start();
    } catch (Exception ex) {
        ex.printStackTrace();
    }

Il n'y a même pas d'erreur (comme cela devrait être le cas si le processus Java était lancé dans une nouvelle fenêtre de terminal).

3voto

Raekye Points 2453

Et comme d'habitude, bien que je passe des heures à chercher mon problème, je trouve la solution idiote après avoir demandé à stack overflow... pas besoin des guillemets simples autour de tell application... . Process builder le fait. Er, pas sûr que la question doive être fermée. Assez localisé, mais certainement confus IMO

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X