2011-08-28 86 views
0

我运行的Kohana框架内的cron,执行线包括Java的JAR文件中的Kohana

php index.php --uri=nameofcron 

其中nameofcron是我的控制器,驱动的cron的名称。 在这个cron的执行过程中,我需要运行一个执行java jar可执行文件的exec()语句。 jar文件需要访问与jar文件位于同一目录级别的src文件夹中的资源。当在所述目录中的简单php脚本中运行该exec()语句时,exec()运行良好。但是,当试图在我的cron的Kohana执行路径中运行exec()语句时,它给我一个错误,说src文件夹内的资源没有找到。

有没有办法在Kohana框架中包含java资源,以便我可以在cron执行中使用它们?

+0

首先更改工作目录,然后在该更改的目录中执行jar命令。您可以将cd命令放在java命令的前面:'cd/home/path/to; java the.jar' - 这是UNIX,你还没有写过你使用的平台。 – hakre

回答

0

要么在运行该命令之前更改工作目录(如@hakre所述),要么需要将src文件夹和jar本身包含在类路径中。

如果你想改变cwd而不使用cd命令,我建议使用proc_open

要以编程方式查找jar文件的路径,我建议您使用Kohana::find_file(...)