我一直在尝试运行一个从input.txt
读取的JAR文件,并在控制台中以这种方式写入output.txt
:
java -jar file.jar input.txt output.txt
它在我的机器上100%正常工作。我需要在php脚本中运行它,这段代码对我来说100%正常(Mac OS,php内置服务器):
exec("java -jar file.jar input.txt output.txt");
但是一旦我部署它(CentOS服务器)允许exec
函数,它就会失败,它会返回一个空字符串而jar不起作用,直接从shell运行它就行了。
我该如何解决? 提前谢谢!
答案 0 :(得分:-1)
exec()
的问题在于PHP不知道Java在服务器上的位置。更新命令以指定Java可执行文件的完整路径,它应该可以工作,但是当你使用它时也应该使用jar和文本文件的完整路径。