salut
je cherche à lancer l'exécution d'un fichier .java à partir du mon programme java
salut
je cherche à lancer l'exécution d'un fichier .java à partir du mon programme java
Tu veux dire que tu veux compiler un fichier java à partir d'un programme java ?
salut
je veux compiler et exécuter un fichier .java à partir du mon programme java
pour compiler ça marche très bien mais l'exécution ça marche pas j'ai essayé ça mais pas d' exécution qui s'affiche :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 try { SHELL32.DLL,ShellExec_RunDLL " + file); Process p = Runtime.getRuntime().exec("javac ,c:\\ras.java"); }catch (Exception err) { err.printStackTrace(); }
salut
le code
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 try { Process p = Runtime.getRuntime().exec("javac ,c:\\ras.java"); }catch (Exception err) { err.printStackTrace(); }
la virgule n'a rien à faire dans cette string et n'a aucun send. Utilise le code suivant par exemple:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Process p = Runtime.getRuntime().exec(new String[]{"javac","c:\\ras.java"}); p.getOutputStream().close(); // on ferme les stream pour éviter les blocages, puisqu'on ne les traite pas p.getInputStream().close();
salut
il n'y a pas d'erreur mais sa donne rien de résultat d'exécution de fichier java
c'est l'intruction de compilation ça, ca va te donner un fichier .class. En supposant bien sur que l'exécutable javac est bien dans le path. Sinon faut mettre son chemin complet.
salut
il ne donne aucun exécutable
pour compiler ce fichier j'ai utilisé :et sa marche mais pour l'exécuter je ne sais pas .
Code : Sélectionner tout - Visualiser dans une fenêtre à part compiler.run(null, null, null,filesToCompile);
soit dans ce cas tu n'as pas sur lancer javac et t'as eu un exception (faut alors la lire), soit t'as bien lancé javac mais il t'a afficher un message d'erreur (dans ce cas, il faut utiliser process.getInputStream() pour lire ces message et éventuellement les recopier vers ta console.
Pour lancer une deuxième jvm, c'est le même principe, il suffit de faire un exec en pointant sur le java.exe que tu veux utiliser.
voici un truc qui peut t'aider,
.http://blog.developpez.com/adiguba/p...s-plus-simple/
salut
il affiche pas une exception et pas err
tu execute ton code depuis un ide ou depuis la console. Dans ce dernier cas, quelle est la commande que tu utilise? Sous windows, si tu utilise javaw, tu n'aura pas de sorite dans la console et donc tu ne verra pas l'exception!
salut
j'utilise un ide (jcreator) et je vois pas la résultat d'execution
si par "résultat d'exécution" tu entend l'output de l'appel à java, comme je l'ai dit, il faut le lire dans le process.getInputStream et toi meme le renvoyer vers System.out
salut
quand j'utilise javaw une fenêtre s'affiche : could not find main class c:\\ras.java
program will exit
et est ce que tu peux expliquer la methode process.getInputStream
pour compiler c'est javac, pas javaw. Pour les inputstream, il y a des explications en long et en large dans le lien qui t'a été donné.
et pour exécuter ?
pour exécuter c'est javaw.exe ou java.exe, en lui passant les meme paramètre que tu passerais en ligne de commande. Donc en précisant la classe à exécuter (pas le .java!!) et éventuellement le classpath (-cp blablabla)
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager