Multiple Java versions

Jung-uk Kim jkim at FreeBSD.org
Wed Sep 25 19:09:27 UTC 2013


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 2013-09-25 14:54:13 -0400, Gary Aitken wrote:
> On 09/25/13 00:38, Andrea Venturoli wrote:
>> On 09/25/13 08:28, Jason Helfman wrote:
>> 
>>> java/javavmwrapper
>>> 
>>> cc: java
>> 
>> Sorry for being so dumb, but I don't understand this... I though
>> I was using javavmwrapper... what do you mean?
> 
> I believe you are correct in your original statement, and that
> there is something wrong with the java startup script.
> 
> You do not need to set JAVA_HOME. The startup script has code to
> locate all installed versions, set JAVA_HOME if not already set, 
> prioritize them, and execute the latest one; but it doesn't seem to
> be working properly.
> 
> There is no javavmwrapper, at least in my installation(s). The java
> startup script (/usr/local/bin/java) indicates it is itself 
> javawrapper.sh.
> 
> If JAVA_HOME is not set, the startup script finds a java by using
> make, and that finds openjdk6 when openjdk6 and openjdk7 are both
> installed.

Because java/openjdk6 is the default Java for FreeBSD ATM.  If you
want to force openjdk7 for some reason, you just have to set
JAVA_VERSION, e.g.,

% java -version
openjdk version "1.6.0_32"
OpenJDK Runtime Environment (build 1.6.0_32-b27)
OpenJDK 64-Bit Server VM (build 20.0-b12, mixed mode)
% env JAVA_VERSION=1.7 java -version
openjdk version "1.7.0_25"
OpenJDK Runtime Environment (build 1.7.0_25-b15)
OpenJDK 64-Bit Server VM (build 23.21-b01, mixed mode)

Please see javavm(1) for more information, i.e., "man javavm".

> In this case, the script is not using the installed prioritization
> list in /usr/local/etc/javavms.  It seems to me it should be
> checking this before resorting to what make finds.

Please note /usr/local/etc/javavms is never ordered by user
preference, *intentionally*.

> However, you can avoid this behavior and get the right thing by
> setting JAVAVM_FALLBACK_ONLY=1

It is normally unnecessary.

Jung-uk Kim
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.21 (FreeBSD)

iQEcBAEBAgAGBQJSQzQ/AAoJEHyflib82/FGEacH/iQh2YXQ5w/6OP+crwRK8xr7
jxckXVBog4CVfnF+RHjHKJ9ByYlVjBZCLzMeMLFSdPDfKS9K0vHPR6AQVOBPQhz0
Rakgzxw8ocoxXZcHwo0mWu7rNvJJJUt+QOjraeQcbGa5JhXgTwH5j1hVG3iPeVD7
YNaE1id9cp/RJ4sMLMJ99PQgDDWRky9WX/H+axNm/DfwouwcR2oAkYeeIA5WfsDF
mQQYgiAf6oWQMPMqT94Ml/AhsA3UD8yQ+T6hJOeSqkWpSxtfCdkNi+6icndzshEz
iIRkzY3IDf/Hb3nBX4oQz9J0Tj0PxL3P00ZBxJi8bYZavsd8C6caT4ZwPGngwYE=
=d9xb
-----END PGP SIGNATURE-----


More information about the freebsd-ports mailing list