gpt4 book ai didi

java - csc -version 正在终端中运行,但不是从我的 java 程序 MAC 运行

转载 作者:太空宇宙 更新时间:2023-11-04 04:53:32 25 4
gpt4 key购买 nike

package test_cmd_command;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.time.LocalDateTime;


public class CommandLine {

public static String executeCommand(String cliCommand) {
String s = null;
BufferedReader stdInput = null;
BufferedReader stdError = null;
String error = "";
String output = "";
try {
ProcessBuilder pb1 = new ProcessBuilder(
"bash",
"-c",
cliCommand);

pb1.redirectErrorStream(true);
Process p = pb1.start();

stdInput = new BufferedReader(new InputStreamReader(p.getInputStream()));
stdError = new BufferedReader(new InputStreamReader(p.getErrorStream()));

while ((s = stdInput.readLine()) != null) {
output += "\n" + s;
}
//System.out.println("Here is the standard error of the command (if any):\n");
while ((s = stdError.readLine()) != null) {
//System.out.println(">> "+s.toString());
error += "\n" + s;
}

} catch (IOException e) {
System.out.println("exception happened - here's what I know: \n" + e.getMessage());
} finally {
try {
stdInput.close();
stdError.close();
} catch (IOException e) {

}
}
String returnValue = null;
if (output != null && error != null) {
returnValue = output + "\n" + ": " + error;
} else if (output != null) {
returnValue = output;
}
return returnValue;
}
}

“csc -version” 正在终端中运行,但不是从 MAC 上的 java 程序运行。它给出输出“bash Command Not Found”。有什么办法可以解决这个问题吗......该程序正确运行其他命令,例如 javac -version 等。我在 MAC 而非 Windows 上运行此程序。

最佳答案

这对我有用

export PATH=/Library/Frameworks/Mono.framework/Versions/Versions/bin/:${PATH}

我运行这样的命令 "export PATH=/Library/Frameworks/Mono.framework/Versions/Versions/bin/:${PATH}; csc -version" 它可以工作并返回 csc 的版本。

关于java - csc -version 正在终端中运行,但不是从我的 java 程序 MAC 运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52872808/

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