我为我的文凭开发了一个应用程序,在某些时候我必须从java源文件运行一个批处理文件。问题是每次我尝试执行该批处理文件时都会收到此错误:"没有足够的存储空间来处理此命令"。
此批处理文件只运行cvs log 命令。如果我直接从cmd运行命令,一切都很顺利,但如果我尝试运行包含此命令的批处理文件,我会收到该错误:(
我使用此示例来运行批处理文件:
// --------------
Process process = Runtime.getRuntime().exec(cmd);
process.waitFor();
// --------------
其中,cmd是这样的字符串:" cmd / c start \" \" absolute_path_of_batch_file"
有谁知道我该如何解决这个问题?这究竟是什么错误?谢谢!
答案 0 :(得分:1)
从java运行将在其自己的进程中运行该命令,因此它应该与从命令行运行命令完全一样。可能不同的是您从(或环境变量)运行批处理文件的目录。批处理文件中是否有相对路径?
否则,在sysout
字符串上执行cmd
并在cmd
终端中执行该字符串,看看它是否有效。并发布确切的错误。