gpt4 book ai didi

java - Runtime.getRuntime().exec 中出现 NullPointerException 错误

转载 作者:行者123 更新时间:2023-12-02 02:14:02 25 4
gpt4 key购买 nike

我正在尝试创建一些流程来完成一项任务,我使用 Runtime.getRuntime().exec任何进程从一个文件中读取一些长数字,然后使用异或操作数并写入另一个文件。最后,主进程应该读取已生成的文件中的每个长数字,并再次进行异或。这是我的代码,但是当我运行它时,我得到 NullPointerException ,其中包括 Subprocess[i].waitFor() == 0 。为什么?谢谢你的帮助。我知道什么是 NullPointerException,但我不想问它!

    Process[] Subprocess;
Subprocess = new Process[processCount];
for (int i = 0; i < processCount; i++) {
try {
String[] command = {"java", "-cp", pathSubProcess, "SubProcess", p, String.valueOf(i), String.valueOf(processCount), String.valueOf(size)};
Subprocess[0] = Runtime.getRuntime().exec(command);

} catch (IOException e) {
System.out.println(e.getMessage());
}
}
/////////////////////////////////////////////////////////////////////////
long xor = 1;
for (int i = 0; i < processCount; i++) {
if(Subprocess[i].waitFor() == 0){
xor = xor ^ pp.readFiles(i);
}
}

xor = xor ^ 1;

最佳答案

你的问题出在你的作业上:

Subprocess[0] = Runtime.getRuntime().exec(command);

您始终会覆盖数组的第一个元素。

将 0 更改为 i

关于java - Runtime.getRuntime().exec 中出现 NullPointerException 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49551031/

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