I'm a java developer. Therefor my gentoo box contains different JDK
versions, even from different vendors, for doing tests against specific
JDKs. I've still installed
JDK 1.4, 1.5 and 1.6 from Sun and IBM.
I'm also using idlj for generating CORBA stubs, and when I wrote a build
script to be used for a daily build via cronjob, I noticed a strange
problem --- the cron job
failed, but if I started the script from my terminal, it worked as designed!
The problem was that when run from the cron job, ant could not find the
idlj executable. This is because cron jobs don't have the full path like
interactive shells have.
In my interactive path the bin/ directory for the generation 1 system VM
was included, so he found idlj. This meant, btw. that even when I wanted
to compile with JDK 1.5,
the idl4j executable was still the one used for JDK 1.4!
The reason for that is that for the other java sdk executables there is
a symlink in /usr/bin pointing to run-java-tool. This symlink does not
exist for idlj - IOW idlj is not in /usr/bin.
As soon as I manually made a symlink via "ln -s /usr/bin/run-java-tool
/usr/bin/idlj", everything worked as designed.
Seems like an oversight --- idlj is not the most popular tool around,