gpt4 book ai didi

java Processbuilder - 执行不在 OS X 路径中的文件

转载 作者:行者123 更新时间:2023-12-01 16:04:38 26 4
gpt4 key购买 nike

好吧,我正在尝试制作 ChucK在导出的处理草图中可用,即如果我从处理导出应用程序,ChucK VM 二进制文件将从应用程序内部执行。因此,作为该应用程序的用户,您根本不需要担心 ChucK 会挡在您的路上。

现在我正在生成并执行一个 bash 脚本文件,但这样我就不会从 ChucK 获得任何控制台输出返回到处理中:

#!/bin/bash
cd "[to where the Chuck executable is located]"
./chuck --kill
killall chuck # just to make sure
./chuck chuckScript1.ck cuckScriptn.ck

然后

Process p = Runtime.getRuntime().exec("chmod 777 "+scriptPath);
p = Runtime.getRuntime().exec(scriptPath);

这可行,但我想直接从处理中运行 ChucK,但无法让它执行:

String chuckPath = "[folder in which the chuck executable is located]"
ProcessBuilder builder = new ProcessBuilder
(chuckPath+"/chuck", "test.ck");

final Process process = builder.start();
InputStream is = process.getInputStream();
InputStreamReader isr = new InputStreamReader(is);
BufferedReader br = new BufferedReader(isr);
String line;
while((line = br.readLine()) != null) println(line);
println("done chuckin'! exitValue: " + process.exitValue());

抱歉,如果这是新手风格:D

最佳答案

ProcessBuilder builder = new ProcessBuilder
(chuckPath+"/chuck", chuckPath+"/test.ck");

参数都需要绝对路径。

关于java Processbuilder - 执行不在 OS X 路径中的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2881279/

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