java - csc -version 正在终端中运行,但不是从我的 java 程序 MAC 中运行
问题描述
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 的版本。
推荐阅读
- kubernetes - Kubernetes RabbitMQ 队列镜像
- android - 上传可调试的 Flutter 应用程序时出现 Google Play 错误
- javascript - 在 node.js 中使用 require/new 实例化一个新对象
- reactjs - 如何使用模板字符串从道具创建链接并在 React 组件中渲染图像
- opencv - ROS Melodic & OpenCV - CompressedImage 未发布
- javascript - Ajax 表单数据没有向 php 发送任何内容
- android - 在为 recyclerview 创建适配器时,为什么必须附加 RecyclerView.Adapter,它使用 <[NameOfAdapter].Viewholder> 扩展?
- reactjs - 如何使用 ReactJS 在组件中缓存外部图像
- php - 已检查 PHP 表单输入
- c# - FormUrlEncodedContent 和查询字符串有什么区别?