Olá, tenho um script python e queria chamar e executar ele quando clico em um botão no java
String pythonPath = "python3"; // ou "python" dependendo do seu sistema...
String scriptPath = "aqui vc coloca o caminho do arquivo";
ProcessBuilder processBuilder = new ProcessBuilder(pythonPath, scriptPath);
Process process = processBuilder.start();
BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream()));
String line;
while ((line = reader.readLine()) != null) {
System.out.println(line);
}
int exitCode = process.waitFor();
if (exitCode != 0) {
System.out.println("Erro na execução do script Python.");
}
isso basicamente vai chamar o script num terminal.
Vale a leitura desse artigo aqui, de 24 aninhos de idade: When Runtime.exec() won’t | InfoWorld
A moral da história é: disparou um processo, consuma TODOS seus streams de saída.
Outro artigo útil: https://www.baeldung.com/java-lang-processbuilder-api
1 curtida