我一直在尝试运行一个JAR文件,它将从input.txt
读取并写入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");
型
但是一旦我在允许exec
函数的地方部署它(CentOS服务器),它就失败了,它返回一个空字符串,jar不工作,直接从shell运行它是可以的。
我该怎么补救?提前感谢!
2条答案
按热度按时间goqiplq21#
1.使用
which
命令查找java的路径。打开终端,运行命令字符串
1.在exec命令中使用java的完整路径
型
tyg4sfes2#
exec()
的问题是PHP不知道Java在服务器上的位置。更新您的命令以指定Java可执行文件的完整路径,它应该可以工作,尽管您还应该使用jar和文本文件的完整路径。