php5でjavacを含むシェルの実行ができない
こんにちは。シェル、php5初心者です。
まずはそれぞれのソースを記します。
j.sh
~~~~~~~~~~~~~~~~~~~~~~
#!/bin/bash
javac Hello.java
java Hello
~~~~~~~~~~~~~~~~~~~~~~
Hello.java
~~~~~~~~~~~~~~~~~~~~~~
public class Hello {
public static void main(String[] args) {
System.out.println("Hello, World");
}
}
~~~~~~~~~~~~~~~~~~~~~~
test.php
~~~~~~~~~~~~~~~~~~~~~~
<?php
$output = shell_exec('./j.sh');
echo "<pre>$output</pre>";
?>
~~~~~~~~~~~~~~~~~~~~~~
以上のプログラムを使用しtest.phpを実行したときにshell_exec関数によってWebブラウザ上にHello,Worldと表示させたいのですが、コンパイルすらされていないみたいです。どうしたらよいでしょうか。
端末から./j.shのようにシェルを実行するとしっかりとHello,Worldと結果が返ってくるのですが。
ちなみにjavacを含まないシェル(ls -l,cpなど)はphpから実行できました。
どうかよろしくお願いします。
os vine linux 4.3
補足
フルパスというと、/bin/lsなどですよね? これもダメなようです。 ネットで調べたwhichコマンドも試してみましたが、 which: no ls in (/command:/usr/local/bin:/usr/local/sbin:/bin:/sbin:/usr/bin:/usr/sbin:/usr/X11R6/bin) と言われてしまいました…。