Hi guys Good news, Alexander Strange, from Apple, proposed a patch on java-dev list :
--- The problem is that java_md.c's SetExecname() is not implemented for BSD/Darwin in bsd-port. It falls back to using argv[0], but this is a very fragile way to find the path to your own binary, and in particular doesn't work with /usr/bin/java. The Solaris version of that function should work fine, so just add "|| defined(__APPLE__)" to the "#if defined(__sun)" to enable it. Note that the actual launcher source used is in jdk/src/solaris/bin/java_md.c. --- --- jdk/src/solaris/bin/java_md.c 2010-11-21 00:48:24.000000000 +0100 +++ jdk/src/solaris/bin/java_md.c 2010-12-01 00:13:49.000000000 +0100 @@ -692,7 +692,7 @@ SetExecname(char **argv) { char* exec_path = NULL; -#if defined(__solaris__) +#if defined(__solaris__) || defined(__APPLE__) { Dl_info dlinfo; int (*fptr)(); I tested and it seems to fix the java started issue. Updating my build process right now