I installed Java 6 beta 2 on top of Java 5 (1.5.0_07)
on a windows XP box. When I launch DrJava after that,
the compiler output tab says "no compiler available",
as does the compiler popup menu at the bottom right of
the screen. I can't find any way to select the 6.0
compiler or to revert to 5.0. It ought to at least be
possible to select Java 5 if it is installed,
particularly to advise over-eager students who install
the Java 6 beta and then can't get DrJava to work.
Logged In: YES
user_id=430590
Try downloading the latest Java 6.0 Mustang build at
http://download.java.net/jdk6/binaries/ (91 is the latest
build as I type this response but new builds are continually
being released) and running DrJava using that build. The
programmatic interface to the compiler recently changed and
is incompatible with the interface in earlier builds. I have
not tested the DrJava using the beta 2 release but I have
tested it on a variety of Mustang builds (most recently
builds 87 and 89) from which the beta 2 release was
derivieed. I had to change the programmatic interface
(which worked with early builds of Java 6.0) to make it work
with build 87. If the beta 2 release is significantly older
than build 87, it will not work. We obvsiously have no
plans to support obsolete builds of Java 6.0.
I cannot test Mustang builds this week because I am away
from Houston and my laptop is a MacBook.
-- Corky
Logged In: YES
user_id=728235
As suggested, I tried this again after installing the latest
build (b92). Everything seems to work fine, although the
compiler popup menu still does not show any way to select
the (still) installed Java 5 compiler. Java 6 is the only
one listed.
Only one other thought: depending on the timing of the next
version of DrJava vs. Sun's release of Java 6, it might be
worth including something about this in the DrJava release
notes so people will know to download the latest beta if
they really want to use Java 6.
Hal
Logged In: YES
user_id=430590
Running the Java 5.0 compiler in a Java 6.0 JVM is a
delicate proposition that may not work. We have not
actually tried it, but we have had problems when
experimenting with running an older version of the compiler
(namely Java 1.4) on a newer JVM (Java 1.5/5.0). In such a
situation, the "command line" arguments passed to javac must
tell javac to use a version of rt.jar compatible with the
compiler version instead of the version of rt.jar being used
to load the code for javac itself. Running a program that
references two different versions of rt.jar is a
complication that we would prefer to avoid if possible.
-- Corky
Logged In: YES
user_id=1060117
See bug [1463741] for a discussion on using the 1.4 compiler while running
DrJava under 5.0.