我正在从C#运行一个Java批处理文件。如果我通过双击运行它,它将成功执行,但是如果我从C#代码运行它,它会在线程中产生异常。
“主”线程java.lang.noclassdeffoundError中的异常。
原因是什么,如何解决呢?我使用的代码是:
var si = new ProcessStartInfo();
si.CreateNoWindow = true;
si.FileName = "batch-file path";
si.UseShellExecute = true;
Process.Start(si);发布于 2011-05-12 13:33:57
您很可能丢失了系统环境变量中包含的一些参数。
发布于 2011-05-12 13:41:50
尝试像这样设置工作目录
process.StartInfo.WorkingDirectory = "C:\";另外,也不要尝试这里提到的其他选择,
http://social.msdn.microsoft.com/Forums/en/csharpgeneral/thread/20992653-dabf-4b31-85f7-e7bfbfb4557c
发布于 2011-05-12 13:46:44
尝试在批处理文件中添加以下代码作为第一行代码。
@cd /d %~dp0https://stackoverflow.com/questions/5978737
复制相似问题