gpt4 book ai didi

java - 使用 Java PrcoessBuilder 运行 Python 远程文件

转载 作者:行者123 更新时间:2023-11-30 12:08:38 25 4
gpt4 key购买 nike

我正在尝试使用带有以下代码的 java Process builder 执行 python 文件(远程)。

 List<String> commands = new ArrayList<String>();
commands.add("/bin/sh");
commands.add("-c");
commands.add("\"python <(curl <remote python file>\"");

ProcessBuilder builder = new ProcessBuilder(commands);
builder.redirectErrorStream(true);

及其给予

/bin/sh: python <(curl ): No such file or directory

尝试使用命令插值(curl 前面的 $ 和 python 命令未用双引号引起来)

 commands.add("/bin/sh");
commands.add("-c");
commands.add("python <$(curl <remote python file>)");

这是 throw

ambiguous redirect error

最佳答案

Java 几乎可以做 curl 可以做的所有事情。只需下载包含代码的文件:

URL remotePythonFile = new URL("http://example.com/remotefile.py");
Path localPythonFile = Files.createTempfile(null, ".py");
try (InputStream remoteStream = remotePythonFile.openStream()) {
Files.copy(remoteStream, localPythonFile,
StandardCopyOption.REPLACE_EXISTING);
}

ProcessBuilder builder =
new ProcessBuilder("python", localPythonFile.toString());

关于java - 使用 Java PrcoessBuilder 运行 Python 远程文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54264737/

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