comment faire pour exécuter un exécutable java jar dans un autre programme java
Je sais que cette question a été posée mais ces réponses n'ai pas a me donner une réponse.
Je veux exécuter un exec fichier jar dans mon programme java et obtenir le résultat de l'exécution pot dans une chaîne. Voici les codes que j'ai utilisé jusqu'à présent sans succès.
cmdlink = "java -jar iwtest-mac.jar"+" "+cmd;
System.out.println(cmdlink);
Process process = Runtime.getRuntime().exec(cmdlink);
BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream()));
while ((reader.readLine()) != null) {
st = reader.readLine();
}
process.waitFor();
et un autre code que j'ai essayé est comme suit:
String cmdlink = "iwtest-mac.jar "+cmd;
ProcessBuilder pb = new ProcessBuilder("java", "-jar", cmdlink); //cmd here is a string that contains inline arguments for jar.
pb.redirectErrorStream(true);
pb.directory(new File("C:\\Users\\Dharma"));
System.out.println("Directory: " + pb.directory().getAbsolutePath());
Process p = pb.start();
InputStream is = p.getInputStream();
BufferedReader br = new BufferedReader(new InputStreamReader(is));
for (String line = br.readLine(); line != null; line = br.readLine()) {
System.out.println( line );
p.waitFor();
Les deux ci-dessus ne sont pas de travail pour moi. Toutes les suggestions sont les bienvenues.
OriginalL'auteur Vardhan D G | 2013-03-29
Vous devez vous connecter pour publier un commentaire.
Ce qui fonctionne Pour Moi..
C'est ce que les Docs dit-
Vous pouvez passer n'importe quel nombre d'arguments dans le constructeur.
Lire plus sur le processus générateur de ici.
excuse moi si j'ai besoin de donner des arguments de ligne de commande pour mon pot où dois-je spécifier dans le code ci-dessus?
Erreur: impossible de créer la Machine Virtuelle Java. Erreur: Une erreur fatale s'est produite. Programme de la sortie. Option non reconnue: -pot j'ai eu les erreurs ci-dessus
OriginalL'auteur Mohammad Adil