ant-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Manuel Mall ...@arcus.com.au>
Subject RE: NoClassDefFoundError exception on when <taskdef> is invoked a second time
Date Wed, 17 Dec 2003 01:11:14 GMT
Just to close this "sort of" off.

I haven't found the source of the problem although I tried to step
through it with a Java debugger. In the end it was a native JVM call
that returned the "NoClassDefFoundError" error. But why???

Any way, the workaround I used is to remove the <classpath ...>
definition from the <taskdef...> and instead added those classes to
the CLASSPATH in the shell script that calls ant. Not nice but solved
my problem.

Manuel

-----Original Message-----
From: Manuel Mall [mailto:MM@arcus.com.au]
Sent: Thursday, 11 December 2003 17:06 
To: 'Ant Users List'
Subject: RE: NoClassDefFoundError exception on when <taskdef> is
invoked
a second time


Phillipe,

I sent the stack trace in a previous post.

Here is a.xml:

<project name="oscar" default="compile">
...
</project>

And here is b.xml:

<project name="tomcat precompile" default="jspc" basedir=".">
...
    <target name="jspc">
...
        <taskdef classname="org.apache.jasper.JspC" name="jasper2" >
            <classpath id="jspc.classpath">
                <pathelement
location="${java.home}/../lib/tools.jar"/>
                <fileset dir="${tomcat.home}/bin">
                    <include name="*.jar"/>
                </fileset>
                <fileset dir="${tomcat.home}/server/lib">
                    <include name="*.jar"/>
                </fileset>
                <fileset dir="${tomcat.home}/common/lib">
                    <include name="*.jar"/>
                </fileset>
            </classpath>
        </taskdef>
...
    </target>
</project>
-----Original Message-----
From: Philippe Valle [mailto:pvalle@eprocess.fr]
...
when you do : ant -v a.xml what kind error did you have exactly ?
For debug send me a.xml , b.xml and logs.

Manuel Mall wrote:

>Philippe,
>
>this is exactly what's puzzling me. How can it be a classpath error
>when it works the first time around?
>
>Manuel
>
>-----Original Message-----
>From: Philippe Valle [mailto:pvalle@eprocess.fr]
>...
>This is an classpath error. Check your classpath
>
>
>Manuel Mall wrote:
>
>  
>
>>I have a buildfile a.xml which calls b.xml through an <ant> task a
>>number of times. b.xml contains a <taskdef> which contains a nested
>><classpath..>.
>>
>>On the first invocation of b.xml through the <ant> task in a.xml
>>everything works fine. However, the second time around I get a
>>NoClassDefFoundError exception on the <taskdef> in b.xml. 
>>
>>I am not sure what I might be doing wrong here. 
>>
>>Manuel
>>
>>Some more info:
>>===============
>>I am using ant 1.5.4..
>>
>>The abbreviated ant output is:
>>...
>>jspc: <-- this is the first invocation of b.xml
>>    [echo] Precompiling application internet from
>>/data01/oscar/internet/htdocs using tomcat in
>>/usr/local/jakarta-tomcat
>>...
>>   [javac] Compiling 103 source files to
>>/data01/oscar/internet/htdocs/WEB-INF/src
>>...
>>jspc:  <-- this is the second invocation of b.xml
>>    [echo] Precompiling application intranet from
>>/data01/oscar/intranet/htdocs using tomcat in
>>/usr/local/jakarta-tomcat
>>
>>BUILD FAILED
>>file:/home/mm/oscar/build_current/b.xml:37: Could not create task of
>>type: jasper2 due to java.lang.NoClassDefFoundError
>>
>>---
>>
>>The taskdef in b.xml looks like:
>>
>>       <taskdef classname="org.apache.jasper.JspC" name="jasper2" >
>>           <classpath id="jspc.classpath">
>>               <pathelement
>>location="${java.home}/../lib/tools.jar"/>
>>               <fileset dir="${tomcat.home}/bin">
>>                   <include name="*.jar"/>
>>               </fileset>
>>               <fileset dir="${tomcat.home}/server/lib">
>>                   <include name="*.jar"/>
>>               </fileset>
>>               <fileset dir="${tomcat.home}/common/lib">
>>                   <include name="*.jar"/>
>>               </fileset>
>>           </classpath>
>>       </taskdef>
>>
>>---
>>
>>I also tried using the latest ant 1.6 beta 3 and it fails the
>>following error on the second invocation of b.xml:
>>
>>BUILD FAILED
>>/home/mm/oscar/build_current/a.xml:19: Following error occured while
>>executing this line
>>java.lang.ExceptionInInitializerError
>>
>>--------------------------------------------------------------------
-
>>To unsubscribe, e-mail: user-unsubscribe@ant.apache.org
>>For additional commands, e-mail: user-help@ant.apache.org
>>
>>
>> 
>>
>>    
>>
>
>
>  
>


-- 
Philippe  VALLE <pvalle@eprocess.fr>
Server Project Manager - e'process
Tel: +33 (0)4 67 13 84 65



---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@ant.apache.org
For additional commands, e-mail: user-help@ant.apache.org

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@ant.apache.org
For additional commands, e-mail: user-help@ant.apache.org

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@ant.apache.org
For additional commands, e-mail: user-help@ant.apache.org


Mime
View raw message