you need to specify a the mapper for srcfiles and specify the type for mapper

   <property name="xmlBuild.notRequired" location="dest"/>
    <uptodate property="xmlBuild.notRequired">
      <srcfiles dir="${src}/xml" includes="**/*.dtd"/>
      <mapper type="merge" to="${dest.dir}/xmlBuild.notRequired"/>
     <targetfile="${deploy}\xmlClasses.jar"
    </uptodate>
http://ant.apache.org/manual/CoreTasks/uptodate.html

merge type means The target file name will always be the same, as defined by
to - from will be ignored.

Gaius
______________________________________________ 
Disclaimer and confidentiality note 
Everything in this e-mail and any attachments relates to the official business 
of Sender. This transmission is of a confidential nature and Sender does not 
endorse distribution to any party other than intended recipient. Sender does 
not necessarily endorse content contained within this transmission. 




> Date: Thu, 15 Jan 2009 07:55:06 -0800
> From: fadedmaxi...@gmail.com
> To: user@ant.apache.org
> Subject: Re: Uptodate task not working
> 
> 
> Looking at the mappers that are provided: identity, flatten, glob, merge and
> regexp, it seems like none of this is what I want. I looked in the ANT
> section before and it doesn't seem to help unfortunately, since I still
> don't get it.
> 
> I based mine off this: 
> 
> [code]
>   <uptodate property="xmlBuild.notRequired"
> targetfile="${deploy}\xmlClasses.jar" >
>     <srcfiles dir= "${src}/xml" includes="**/*.dtd"/>
>   </uptodate>
> [/code]
> 
> "sets the property xmlBuild.notRequired to true if the
> ${deploy}/xmlClasses.jar file is more up-to-date than any of the DTD files
> in the ${src}/xml directory."
> 
> To me this is almost the exact same as what I am trying to do (except for if
> the zip is newer, I need to update) and they are using the default mapper
> here. They have a single target file, .jar, where mine is a .zip, and a
> directory of source files, which I also have. 
> 
> 
> Brian Stephenson wrote:
> > 
> > You need to write a mapper for the srcfiles element, that will present the
> > files as you need them presented to the UpToDate task.  What wrappers are
> > and what they do is something difficult to encapsulate in a single
> > message.
> > I usually dislike answers that just deflect someone to another reference,
> > but I really do suggest that you go to Apache.org and go the ANT section,
> > go
> > to the manual, and read the instructions for the UptToDate task. It
> > contains
> > an explanation on how to use more than one file to compare to one file
> > (using the srcfiles element) and has a link to how to use mappers to
> > create
> > a list of file that is in the proper format for the UpToDate task.
> > 
> > Brian
> > 
> > On Thu, Jan 15, 2009 at 9:38 AM, Faded-Maximus
> > <fadedmaxi...@gmail.com>wrote:
> > 
> >>
> >> Thanks for the reply. I understand what you mean and it makes sense that
> >> it's
> >> not working. I'm not sure how I would go about implementing what I
> >> actually
> >> want too though. If the zip file is newer then any file in the unzipped
> >> location, I want to unzip the zipped file again so I have the most
> >> uptodate
> >> files. Do you have any ideas about how I can implement this?
> >>
> >>
> >> Brian Stephenson wrote:
> >> >
> >> > Hope that wasn't a direct cut-and-paste from the XML file, an
> >> > important typo in there (the double quotes to open
> >> > the "Required" property name).
> >> >
> >> > Nevertheless, I think that your problem relates to your use of the
> >> > srcfiles element in the uptodate task.
> >> >
> >> > As quoted in the ANT manual: "If a <srcfiles> element is used, without
> >> > also specifying a <mapper> element, the default behavior is to use a
> >> > merge mapper, with the "to" attribute set to the value of the
> >> > "targetfile" attribute."  So I think your srcfiles element is
> >> > mergemapped into becoming "build.zip", not the list of files, and if
> >> > so an existing copy of a file is always considered more up to date
> >> > than a non-existent copy. Have not had a chance to cobble up a test
> >> > script, so not sure, but I would start there.
> >> >
> >> > Brian Stephenson
> >> > ThorTech Solutions
> >> > www.thortech-solutions.com
> >> >
> >> > On Jan 14, 2009, at 1:14 PM, Faded-Maximus wrote:
> >> >
> >> >>
> >> >> I am trying to use the uptodate task to see if I need to rebuild my
> >> >> program.
> >> >>
> >> >> [code]
> >> >> <target name="buildrequired">
> >> >>              <uptodate property=Required" targetfile="build.zip">
> >> >>                      <srcfiles dir="${unzip.location}" includes="**/*"
> >> />
> >> >>              </uptodate>
> >> >>                <antcall target="update" />
> >> >>                <antcall target="else" />
> >> >>      </target>
> >> >>      <target name="update" if="Required">
> >> >>              <echo message="A new build is required." />
> >> >>      </target>
> >> >>      <target name="else" unless="Required"
> >> >>              <echo message="No new build is required." />
> >> >>      </target>
> >> >> [/code]
> >> >>
> >> >> Based on my understanding. If the build.zip file has a last modified
> >> >> date
> >> >> newer then any files in the ${unzip.location}, the Required property
> >> >> will be
> >> >> set to true and a message will appear saying that a new build is
> >> >> required.
> >> >> if the unzipped location is newer then the build.zip then a message
> >> >> will
> >> >> appear that no new build is required. Testing this, I have tried and
> >> >> older
> >> >> build.zip file and a newer build.zip file. Both cases Required is
> >> >> always
> >> >> set, and a message appears saying a new build is required. Can
> >> >> somebody help
> >> >> me figure out where I am going wrong?
> >> >>
> >> >> Thanks.
> >> >> --
> >> >> View this message in context:
> >> >>
> >> http://www.nabble.com/Uptodate-task-not-working-tp21461848p21461848.html
> >> >> Sent from the Ant - Users mailing list archive at Nabble.com.
> >> >>
> >> >>
> >> >> ---------------------------------------------------------------------
> >> >> To unsubscribe, e-mail: user-unsubscr...@ant.apache.org
> >> >> For additional commands, e-mail: user-h...@ant.apache.org
> >> >>
> >> >
> >> >
> >> >
> >> >
> >>
> >> --
> >> View this message in context:
> >> http://www.nabble.com/Uptodate-task-not-working-tp21461848p21478875.html
> >> Sent from the Ant - Users mailing list archive at Nabble.com.
> >>
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: user-unsubscr...@ant.apache.org
> >> For additional commands, e-mail: user-h...@ant.apache.org
> >>
> >>
> > 
> > 
> 
> -- 
> View this message in context: 
> http://www.nabble.com/Uptodate-task-not-working-tp21461848p21480450.html
> Sent from the Ant - Users mailing list archive at Nabble.com.
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscr...@ant.apache.org
> For additional commands, e-mail: user-h...@ant.apache.org
> 

_________________________________________________________________
Windows Liveā„¢: Keep your life in sync. 
http://windowslive.com/explore?ocid=TXT_TAGLM_WL_t1_allup_explore_012009

Reply via email to