ant-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Chris Green" <chris.green...@googlemail.com>
Subject Re: Calling a cmd batch file from Ant
Date Wed, 28 May 2008 09:07:56 GMT
But doesn't setting the ineritall to false mean that the script you are
calling won't have access to properties you have set up ?



On Wed, May 28, 2008 at 11:03 AM, Knuplesch, Juergen <
Juergen.Knuplesch@icongmbh.de> wrote:

> But if you use <ANT> or <ANTCALL> it is like you would start  ANT a second
> time. Therfore the properties
> are set in the target or script that you call. The old values are lost if
> you use the attribute
> Inheritall=false
> And using <property> inside <Ant> sets some properties to a value you
> define.
>
>
>
> --
> Jürgen Knuplesch
> -----Ursprüngliche Nachricht-----
> Von: Chris Green [mailto:chris.green100@googlemail.com]
> Gesendet: Mittwoch, 28. Mai 2008 10:56
>  An: Ant Users List
> Betreff: Re: Calling a cmd batch file from Ant
>
> Jan
>
> Unless I'm missing something here, that wouldn't work.
>
> You can't redefine an ant property one it has already been defined in one
> specific execution of the said script.
>
> That's why I was trying to get the batch file to set up an environment
> variable before executing the generic component.xml
>
> Chris
>
> On Wed, May 28, 2008 at 10:49 AM, <Jan.Materne@rzf.fin-nrw.de> wrote:
>
> > But in your original post you have specified the component in your
> > batch file.
> > > > > > Batch file contents are :-
> > > > > >
> > > > > > set component=common
> > > > > > ant -f %build.dir%/component.xml
> >
> > Where is the difference?
> >
> > <project name="master">
> >    <target name="buildComponentOne">
> >        <ant antfile="component.xml">
> >            <property name="component" value="one"/>
> >        </ant>
> >    </target>
> >    <target name="buildComponentTwo">
> >        <ant antfile="component.xml">
> >            <property name="component" value="two"/>
> >        </ant>
> >    </target>
> > </project>
> >
> > <project name="component">
> >    <property file="${component}.properties"/>
> >    <echo> Build one: ${one} </echo>
> >    <echo> Build two: ${two} </echo>
> > </project>
> >
> > one.properties:
> > # Specifies which parts for component 'one' to do one=J two=N
> >
> > two.properties:
> > # Specifies which parts for component 'one' to do one=J two=J
> >
> >
> >
> > Jan
> >
> >
> >
> > > -----Ursprüngliche Nachricht-----
> > > Von: Chris Green [mailto:chris.green100@googlemail.com]
> > > Gesendet: Mittwoch, 28. Mai 2008 10:36
> > > An: Ant Users List
> >  > Betreff: Re: Calling a cmd batch file from Ant
> > >
> > > Can't use ant or antcall's even in a nested structure. Reason being
> > > :-
> > >
> > > Script process designed to build numerous components of an
> > > application.
> > >
> > > Each of these components has a parameter set up in the properties
> > > file set to Y or N to define whether that component is built during
> > > that execution of the script.
> > >
> > > Therefore, more than one component may need to be built during one
> > > execution of the build script.
> > >
> > > On this basis, the controlling ant script, build.xml cannot have the
> > > component variable defined within it, even nested, as it potentially
> > > needs to be redefined multiple times.
> > >
> > > The component.xml file (generic) which is called again and again for
> > > each component that needs to be build. Want to keep this generic and
> > > as simple as possible. Therefore no hard coding using if statements
> > > to set the 'component' variable.
> > >
> > > On Wed, May 28, 2008 at 10:05 AM, Knuplesch, Juergen <
> > > Juergen.Knuplesch@icongmbh.de> wrote:
> > >
> > > > If you use <ant> Task or <antcall>  you can run the target
> > > with different
> > > > content of a property.
> > > > E.g.
> > > >
> > > > <antcall target="your.target" inheritall="false">
> > > >                  <param name="your.property" value="value1" />
> > > >                </antcall>
> > > >
> > > > <antcall target="your.target" inheritall="false">
> > > >                  <param name="your.property" value="value2" />
> > > >                </antcall>
> > > >
> > > > I even use this in <for> loops made with antcontrb.
> > > >
> > > >
> > > >
> > > > --
> > > > Jürgen Knuplesch                    www.icongmbh.de
> > > > icon Systemhaus GmbH                Tel. +49 711 806098-275
> > > > Sophienstraße 40
> > > > D-70178 Stuttgart                   Fax. +49 711 806098-299
> > > >
> > > > Geschäftsführer: Uwe Seltmann
> > > > HRB Stuttgart 17655
> > > > USt-IdNr.: DE 811944121
> > > > -----Ursprüngliche Nachricht-----
> > > > Von: Chris Green [mailto:chris.green100@googlemail.com]
> > > > Gesendet: Mittwoch, 28. Mai 2008 09:51
> > > > An: Ant Users List
> > > > Cc: Jan.Materne@rzf.fin-nrw.de
> > > > Betreff: Re: Calling a cmd batch file from Ant
> > > >
> > > > The reason I'm not using ant is that :-
> > > >
> > > > 1. My main build.xml script calls the component.xml script
> > > numerous times.
> > > > 2. Each time the component.xml script is called, the
> > > variable 'component'
> > > > needs to be set to something different.
> > > > 3. Component.xml is generic therefore don't want to hard
> > > code anything
> > > > variables in 4. Once variable set, can't be changed.
> > > >
> > > > Honestly, there is some underlying logic behind all of this.
> > > >
> > > > Chris
> > > >
> > > > On Wed, May 28, 2008 at 9:41 AM, <Jan.Materne@rzf.fin-nrw.de> wrote:
> > > >
> > > > > > I am calling a dos batch file from an Ant script using
> > > the following
> > > > > > code :-
> > > > > >
> > > > > > <property name="dos" location="c:/windows/system32/cmd.exe"/>
> > > > > >
> > > > > >
> > > > > > <exec executable="${dos}" dir="c:/build/">
> > > > > >           <arg value="CommonCommponent.bat"/> </exec>
> > > > > >
> > > > > > On the assumption that I get the Microsoft Windows
> > > Copyright info
> > > > > > appear, I assume the above commands are running ok. The
> > > only trouble
> > > > > > is, the contents / commands in the batch file don't seen to
> > > > > > get executed.
> > > > >
> > > > >
> > > > > http://ant.apache.org/faq.html#batch-shell-execute
> > > > >
> > > > >
> > > > > > Batch file contents are :-
> > > > > >
> > > > > > set component=common
> > > > > > ant -f %build.dir%/component.xml
> > > > >
> > > > > Why not use <ant> ?
> > > > >
> > > > >
> > > > > Jan
> > > > >
> > > > >
> > > --------------------------------------------------------------------
> > > -
> > > > > 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
> >
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@ant.apache.org
> For additional commands, e-mail: user-help@ant.apache.org
>
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message