gpt4 book ai didi

java - 从 Java 运行 Python 脚本

转载 作者:行者123 更新时间:2023-11-30 07:27:13 25 4
gpt4 key购买 nike

我正在尝试在 Java 中运行 .py 脚本,但是当我运行 java 代码时,它没有显示任何输出。我做错了什么?我尝试过:

ArrayList<String> command = new ArrayList<String>();
//xterm will be launched, if platform is Linux.
command.add("xterm");
command.add("-c");
command.add("python");
command.add("/home/clef/Escritorio/use_archive.py");
command.add("/home/clef/classification/STOP_WORDS.tar.gz");
command.add("/home/clef/Escritorio/Prueba_linea/000006/6.jpg");
command.add(" > ~/Escritorio/mike.txt");
//command.add("--revert"); // switch to revert the patch

ProcessBuilder pb = new ProcessBuilder(command);

Process p = null;

if (pb != null) {

try {
p = pb.start();
} catch (IOException e) {
e.printStackTrace();
}
if (p != null) {
try {
p.waitFor();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
BufferedReader reader = new BufferedReader(new InputStreamReader(p.getInputStream()));

String line = "";
ArrayList<String> allOut = new ArrayList<>();
System.out.println("salida");
try
{
System.out.println("SALIDA-----------:");
while ((line = reader.readLine())!= null)
{
System.out.println(line);
allOut.add(line);
}
} catch (IOException ex)
{
//allOut = "0";
//Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex);
//System.out.println("erro3"); }
System.out.println("error");
}

该脚本来自 NVIDIA DIGITS 框架,但我无法从 Java 运行任何 python 脚本。如果我在终端中运行 .py 脚本,我会得到输出:

Unknown file: solver.prototxt
Unknown file: train_val.prototxt
Processed 1/1 images in 0.076470 seconds ...
-------- Prediction for /home/clef/Escritorio/Prueba_linea/000006/6.jpg --------
51.4607% - "0"
7.7899% - "1"
5.7782% - "2"
5.6086% - "3"
5.2513% - "4"

Script took 0.523756 seconds.

最佳答案

试试这个:

Process p = Runtime.getRuntime().exec("python yourapp.py");

Exec 运行系统命令,如果您安装了 python,这将像在操作系统的命令终端中一样运行 python 文件。

关于java - 从 Java 运行 Python 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36660460/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com