You are viewing a plain text version of this content. The canonical link for it is here.
Posted to derby-dev@db.apache.org by Madushanka Fonseka <ma...@gmail.com> on 2014/01/26 20:53:23 UTC

Derby Build Issue

Hi,

I have been working with Apache Derby for few months to innovate  Derby to
support queries based on fuzzylogy. There I had to create an external jar
which I suppose to use in Derby. In the ant build file I gave the correct
references so  buildsource worked fine. When I run the buildjars it gave
the successful message but when I load the created derby.jar in a client
app it give the class not found error.
Error must have occurred because of that external jar I created. When I
removed the codes which use my external jar lib, buildjar gives the correct
derby.jar as it works well with the client application.

Please help me to get through this. Thank you!!!

Madushanka Fonseka,
Senior Engineer - Technology,
Virtusa Inc.
Sent from my Windows Phone

Re: Derby Build Issue

Posted by Dyre Tjeldvoll <Dy...@oracle.com>.
On 01/26/2014 08:53 PM, Madushanka Fonseka wrote:
> Hi,
>
> I have been working with Apache Derby for few months to innovate  Derby
> to support queries based on fuzzylogy. There I had to create an external
> jar which I suppose to use in Derby. In the ant build file I gave the
> correct references so  buildsource worked fine. When I run the buildjars
> it gave the successful message but when I load the created derby.jar in
> a client app it give the class not found error.

Let me see if I understand correctly:
You added a dependency on x.jar to the buildsource target so that you're 
able to build your modified files. But when you run with derby.jar on 
the classpath you don't have the classes from x.jar?

Admittedly I'm no ant-guru but I do think the content of derby.jar is 
determined by running the class org.apache.derbyBuild.classlister from 
ant to create list of files to include. See the derbyjar target in 
build.xml.

That class has the following comment:

"	A tool that generates a list of required classes from a
	set of properties files. The value of any property within a property
	file that starts with 'derby.module.' is taken as a class name.
	That class name and all the clases it requires are listed to
	System.out, to facilitate building a zip file. Classes that
	start with 'java.' or 'javax.' are not listed and are not
	checked for dependent classes."

But why does the content of the external jar have to go into derby.jar? 
Why not just add it to the classpath?

A final note; if you plan to contribute your work back to Apache, which 
would be great :), and the external jar contains IP/Copyright/Licence 
which you cannot donate, I do not think Apache rules permit including 
those files in derby.jar (or any other jar distributed with Derby).


HTH,

Dyre

> Error must have occurred because of that external jar I created. When I
> removed the codes which use my external jar lib, buildjar gives the
> correct derby.jar as it works well with the client application.
>
> Please help me to get through this. Thank you!!!
>
> Madushanka Fonseka,
> Senior Engineer - Technology,
> Virtusa Inc.
> Sent from my Windows Phone