我正在尝试使用以下C#代码使用javac编译Java:
Process p = new Process();
p.StartInfo.FileName = "javac";
Directory.CreateDirectory(Application.StartupPath + @"/TempJava");
p.StartInfo.Arguments = "-d "Application.StartupPath + @"/TempJava" + files;
p.Start();
“文件”代表一个字符串变量,其中包含
*.java
文件的名称。总而言之,我想创建一个新文件夹,然后将Java文件(从它们可能位于的位置)取出,并将其编译为TempJava中的类文件。
由于某种原因,该代码不起作用,没有错误,没有警告,但是当我运行它并检查TempJava时,其中没有文件。
最佳答案
仅仅因为您的子进程以可能的错误结尾,并不意味着您的父进程必须意识到这一点。
检查流程的退出代码和标准输出流,尤其是标准错误流。您的答案就在那...
关于c# - 如何从C#编译Java?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7477410/