db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From V.Naraya...@Sun.COM
Subject Re: Compile failing: can't find org.apache.xpath.*
Date Mon, 11 Jun 2007 06:21:12 GMT
Including the xalan files in your classpath might work with 1.5 or later.

But 1.4 has its own embedded xalan that needs to be overridden by
copying the xalan files to jre/lib/endorsed of your 1.4
installation.

There was a discussion regarding this recently for running xml tests.
Thought it might be useful here too.

Narayanan

David Van Couvering wrote:

> Great answers, Knut, this was pretty much what I suspected.  The
> missing piece is I didn't know that the packages were moved, that
> explains what is going on.
>
> I think for now I'll try just adding the xalan packages to the
> classpath.  JDK 1.6 support is coming soon to the Mac, I hear, so it's
> a shortish-term problem that I don't think deserves a large effort.
>
> David
>
> On 6/9/07, Knut Anders Hatlen <Knut.Hatlen@sun.com> wrote:
>
>> David Van Couvering <david@vancouvering.com> writes:
>>
>> > I'm a little stumped.  All of a sudden my build started failing
>> >
>> > compile_iapi_error_jsr169:
>> > compile_reference:
>> > Compiling 4 source files to /Users/David/code/derby/trunk/classes
>> > 
>> /Users/David/code/derby/trunk/java/engine/org/apache/derby/iapi/types/SqlXmlUtil.java:60:

>>
>> > package org.apache.xpath does not exist
>> >
>> > I am not sure if this is relevant, but I have this in my 
>> ant.properties:
>> >
>> > 
>> j14lib=/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Classes 
>>
>> >
>> > Notice I am pointing j14lib to a 1. 5 location.
>>
>> I'm not sure if that's what causing it, but in Sun Java SE 5.0, many XML
>> related classes were moved from the org.apache package hierarchy into
>> com.sun.org.apache to avoid conflicts with jar files installed by
>> users. Perhaps it would work if you downloaded the jar files from
>> http://xalan.apache.org and included them in j14lib.
>>
>> > This is because there is no mechanism that I can see in Derby to build
>> > with 1.5.  The problem is, on a Mac, there *is* no 1.6 JDK.  It's
>> > either 1.4 or 1.6.
>> >
>> > Regardless if this is the cause of my problems, Is there a correct way
>> > to build with a 1.5 compiler?  If not, how would I go about adding
>> > this?
>>
>> I don't think there is a correct way currently. Some of the code (two
>> classes in the lock manager) is compiled for 1.5 with the 1.6 compiler
>> if it's available, but that won't work if there's no 1.6 JDK for the
>> platform. You could perhaps try the same approach as we currently use
>> for 1.6 and create build targets that only run if the jdk15 property is
>> set. That is, the build targets would have to look for the compiler in
>> ${jdk15}/bin/javac and have an attribute if="jdk15" to prevent them from
>> running if the jdk15 variable isn't defined, and fork="yes".
>>
>> Alternatively, if we're ready to add Java 1.5 as a requirement for
>> building Derby, we could have a j15lib variable and non-optional,
>> non-forking build targets similar to the ones we have for Java 1.4 and
>> had for Java 1.3.
>>
>> -- 
>> Knut Anders
>>


Mime
View raw message