in reply to Executing a command from a Perl Program on AIX

To check the meaning of the status you should use the W* functions provided by the POSIX module:
use POSIX; my $st = 139; print "WIFEXITED: ", WIFEXITED($st), "\n"; print "WIFSIGNALED: ", WIFSIGNALED($st), "\n"; print "WTERMSIG: ", WTERMSIG($st), "\n";
On my Linux system this shows:
WIFEXITED: 0 WIFSIGNALED: 1 WTERMSIG: 11
which indicates that the process was terminated by a SEGV signal. You should run this on your AIX box in case AIX uses a different structure for the status code. So it is quite possible that the first java program is segfaulting.