GeneralCommandLine.createProcess()。waitFor()永无止境

时间:2018-08-26 14:18:24

标签: java intellij-idea intellij-plugin

我正在开发一个IntelliJ IDEA插件,我试图从GeneralCommandLine的标准输出中读取大量文本,但是对于this文本,它永远都不会结束。

我试图直接调用生成该二进制文件的二进制文件读取相同数量的文本,并且还只是“捕获”包含相同输出文本的文本文件。结果是一样的:waitFor()永不结束。

GeneralCommandLine generalCommandLine = new GeneralCommandLine("cat");
generalCommandLine.setCharset(Charset.forName("UTF-8"));
generalCommandLine.addParameter("pl.txt");
generalCommandLine.setWorkDirectory(plugin.getProject().getBasePath());
final Process process = generalCommandLine.createProcess();
process.waitFor();

The text不太长(Json的3k行)。

我应该将输入重定向到一个临时文件并从中读取吗?如果是,关于临时文件的目的地和名称的最佳做法是什么?

0 个答案:

没有答案