我正在尝试获取exec("some javaPath/javac",$output,$exit(的编译错误。我尝试了print_r($output(和内爆($exit(,但我注意到如果print_r编译失败并且内爆仅给出错误代码,则会给出一个空错误。
有没有办法得到编译错误?例如,是否有可能获得哪一行有语法错误?
谢谢
显示$exit
的值怎么样?
编译器可能将错误信息发送到错误流而不是标准输出。 两者转到终端/控制台窗口中的同一位置,但程序读取输出不会看到错误,反之亦然。
您可以尝试exec('some javaPath/javac 2>&1', $output, $exit);
,看看是否显示更多信息。 在Linux中,它应该。 在Windows中,也许其他人知道...