ant-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From ba...@goodconsultants.com
Subject Re: How can I select different classpath for building different apps?
Date Mon, 15 Dec 2003 18:53:25 GMT
Antoine,

Thanks for replying... It doesnt seem to work. Would you please tell me what i 
did wrong? Here is the code:

TARGET:

<target name="classpath-tomcat">

        <echo message="classpath-tomcat: CATALINA_HOME is 
${system.CATALINA_HOME}"/>

        <path id="compile.classpath">
        <pathelement location="${catalina.home}/common/classes"/>
        <fileset dir="${catalina.home}/common/endorsed">
                <include name="*.jar"/>
        </fileset>

        <fileset dir="${catalina.home}/common/lib">
                <include name="*.jar"/>
        </fileset>

        <pathelement location="${catalina.home}/shared/classes"/>
        <fileset dir="${catalina.home}/shared/lib">
                <include name="*.jar"/>
        </fileset>

        </path>


</target>


CALLING:

<target name="tomcat" if="system.CATALINA_HOME">

        <echo message="CATALINA_HOME is: ${system.CATALINA_HOME}"/>
        <antcall target="clean"/>
        <antcall target="init"/>
        <antcall target="classpath-tomcat"/>
        <antcall target="compile-newserver"/>
        <antcall target="dist-tomcat"/>
        <antcall target="deploy-tomcat"/>

</target>


JAVAC:

<target name="compile-newserver">

        <echo message="SOURCE DIRECTORY: ${src.home}"/>
        <echo message="TARGET DIRECTORY: ${build.home}"/>

        <!-- Compile Java classes as necessary -->
        <mkdir dir="${build.home}/WEB-INF/classes"/>
        <javac classpathref="compile.classpath"
                srcdir="${src.home}"
                destdir="${build.home}/WEB-INF/classes"
                debug="${compile.debug}"
                deprecation="${compile.deprecation}"
                optimize="${compile.optimize}"
                excludes="java/sandbox/**">
                <classpath refid="compile.classpath"/>
        </javac>

        <!-- Copy application resources -->
        <copy  todir="${build.home}/WEB-INF/classes">
                <fileset dir="${src.home}" excludes="**/*.java"/>
        </copy>
        <echo message="Completed."/>

</target>

ERROR:

BUILD FAILED
file:/home/barry/workarea/src/server/build.xml:245: Reference 
compile.classpath not found.

Quoting Antoine Lévy-Lambert <antoine@antbuild.com>:

> barry@goodconsultants.com wrote:
> 
> >All,
> >
> >In one single build.xml, how can I select different set of classpaths? for 
> >Tomcat and for other apps?
> >
> >I try to do the followings:
> >
> ><target name="tomcat" if="system.CATALINA_HOME">
> >
> >        <antcall target="clean"/>
> >        <antcall target="init-tomcat"/>
> >        <antcall target="compile-newserver"/>
> >        <antcall target="dist-tomcat"/>
> >        <antcall target="deploy-tomcat"/>
> >
> ></target>
> >
> >In the init-tomcat target, I have the followings:
> >
> ><target name="init-tomcat">
> >
> >        <echo message="CATALINA_HOME is ${system.CATALINA_HOME}"/>
> >
> >        <path id="compile.classpath">
> >
> >        <pathelement location="${catalina.home}/common/classes"/>
> >        <fileset dir="${catalina.home}/common/endorsed">
> >                <include name="*.jar"/>
> >        </fileset>
> >        <fileset dir="${catalina.home}/common/lib">
> >                <include name="*.jar"/>
> >        </fileset>
> >
> >        <pathelement location="${catalina.home}/shared/classes"/>
> >        <fileset dir="${catalina.home}/shared/lib">
> >                <include name="*.jar"/>
> >        </fileset>
> >
> >        </path>
> >
> ></target>
> >
> >Unfortunately, it does not work setting classpath like this... Any advice? 
> >
> >Thanks
> >
> >Barry
> >
> >
> >  
> >
> ur target above init-tomcat creates a piece of data with id 
> "compile.classpath". But then you need to reference your classpath, for 
> instance in <javac>
> 
> <javac classpathref="compile.classpath" ...>
> <!-- other nested elements -->
> </javac>
> 
> will work.
> 
> Antoine
> 
> ---------------------------------------------------------------------
> 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