gpt4 book ai didi

java - 如何判断用户的java代码是否编译成功?

转载 作者:行者123 更新时间:2023-11-30 08:52:55 36 4
gpt4 key购买 nike

我有一个在 LAMP 堆栈上运行的 Web 应用程序,允许用户将 Java 代码写入 HTML 表单,但根据该代码是否成功编译,我想做不同的事情。

我目前的做法是,PHP 程序会使用用户的输入生成一个 .java 文件,在服务器上执行它(我已经处理了安全部分),然后检查是否有任何错误输出.

我知道 Java 使用 System.err 流打印错误,有没有办法让我判断是否向控制台输出了任何内容?喜欢听和区分程序输出流的方法吗?

最佳答案

您可以检查 javac 退出代码。以下是 javac 退出代码的列表:

static final int
EXIT_OK = 0, // Compilation completed with no errors.
EXIT_ERROR = 1, // Completed but reported errors.
EXIT_CMDERR = 2, // Bad command-line arguments
EXIT_SYSERR = 3, // System error or resource exhaustion.
EXIT_ABNORMAL = 4; // Compiler terminated abnormally

引用文献:http://bugs.java.com/view_bug.do?bug_id=7014715

从 Java 6 开始,您可以通过编程方式调用 Java 编译器(如果提供)。看到这个:ToolProvider#getSystemJavaCompiler

关于java - 如何判断用户的java代码是否编译成功?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30022646/

36 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com