运行 使用 Java ProcessBuilder 的批处理文件无法识别网络驱动器

Running Batch File Using Java ProcessBuilder does not recognized Network drive

我有一个 java 程序 (jar),它使用 ProcessBuilder 来执行动态批处理文件。

Process process = (new ProcessBuilder(commands)).start();

我有一个像这样的简单批处理文件,Z --> 是一个网络驱动器。假设我的批处理文件位置在 my_batch.bat.

copy Z:\Download\*.csv D:\Download\

如果我从命令提示符下执行这个批处理文件,它 运行 成功。但是,如果我使用 java 程序执行,该程序将不起作用(没有任何反应)。但是,如果我像下面这样更改批处理文件,它就可以工作。 E->是普通驱动器(不是网络驱动器)。

copy E:\Download\*.csv D:\Download\

我不知道为什么会这样,请帮忙。 我的操作系统是 Windows.

我通过将这一行放在我的批处理文件中解决了这个问题。

net use Z: \Computer\shared /user:DOMAIN\username password

在这个过程之后,在我的批处理文件的末尾使用它。

net use Z: /d

感谢在评论区帮助我的人。