Len Trigg <[EMAIL PROTECTED]> writes:

> Sending this to the main jde list for more discussion. Background: I
> wrote this patch so that the system classes (rt.jar) would be added to
> jikes command line using -bootclasspath rather than -classpath. This
> was to prevent a conflict in versions between any inherited
> BOOTCLASSPATH environment variable (see jikes manpage), and the rt.jar
> located by jde (which can depend on the jde-jdk variable for
> targetting different JVM versions). (I encountered this problem which
> is why I wrote the patch). The question is, what is the best way to
> add the system classes when using jikes. Javier indicates that using
> -bootclasspath may interfere with people using it for other purposes
> (but at this point I'm not sure how)

Mainly I don't like messing around with users settings. The particular case I
was referring was if the rt.jar gets appended before any of the user customized
bootclasspath. The classes could get compiled against the wrong class files,
causing problems at runtime. Your patch does not have this problem since rt.jar
gets appended to the bootclasspath.

>
>
> Javier S. Lopez wrote:
>> Could you send me the patch? The attachment you sent seems to be empty.
>
> Sure, here it is, inlined:
>
>
> Thus jikes gets the non-overridden definition of
> jde-compile-classpath-arg, and the inferred system classes are added
> using -bootclasspath
>
>
>> I took a look at Ant and I was mistaken about its behavior. Ant does not add
>> anything at all to the classpath or boot class path. Perhaps we should do the
>> same.
>
> As in, using the jikes compiler doesn't require either
> classpath/bootclasspath parameters in the build.xml or environment
> variables to be set in order to work?  Then they must be adding an
> implicit rt.jar to jikes somehow when they invoke it (otherwise jikes
> wouldn't be able to compile it).

Originally I thought that they were adding rt.jar either to the classpath or
bootclasspath. This is not the case though, users need to add rt.jar to the
claspath or bootclasspth in build.xml


A good solution for this is something along this lines:
jde-compile-option-jikes-classpath
Location to add system classes:
(*) bootclasspath
( ) classpath
( ) none

Classes:
INS DEL: /jre/lib/rt.jar
INS

This will allow users to choose the location or disable the functionality
altogether. In addition it will allows users to add other jar files like:
jce.jar and jsse.jar

Javier
>
> Cheers,
> Len.
>

Reply via email to