c# - 如何从C#编译Java?

标签 c# java

我正在尝试使用以下 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();

“files”表示包含*.java 文件名称的字符串变量。

总而言之,我想创建一个新文件夹,然后获取 Java 文件(无论它们位于何处)并将其编译成 TempJava 中的类文件。

由于某种原因,代码无法工作,没有错误,没有警告,但是当我运行它并检查 TempJava 时,其中没有文件。

最佳答案

仅仅因为您的子进程以可能的错误结束,并不意味着您的父进程必须意识到它。

检查进程的退出代码和标准输出流,尤其是标准错误流。你的答案就在那里......

关于c# - 如何从C#编译Java?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7477410/

相关文章:

java - 是否可以使用 Java 8 流构造 : 更简洁地表达以下逻辑

java - 我可以创建一个生成多个可执行 Jars 的 Eclipse 项目吗?

java - java在 objective-c 中的并发hashmap的等价物

java - Dagger 2 如何解决构造函数依赖

c# - 实现二进制哈希,如 http ://www. fileformat.info/tool/hash.htm

c# - 在 P/Invoke 中使用 ref struct 或 class

c# - 创建自定义Windows输出设备

c# - C# 有没有办法将 "type"变为 long ?

java - 多模块 Maven 项目设计注意事项

c# - 如何使用 SelectSingleNode 获取属性值?