Here is the whole target:

    <target name="load-project-metadata" depends="
persist-long-living-properties">
        <fail unless="project.has.buildable.units" message="The current 
project contains no buildable modules"/>
        <dependset>
            <srcfilelist dir="${project.dir}" files="
${project.all.unit.descriptor.files}"/>
            <srcfileset file="${global.lib.dir}/libraries.xml"/>
            <srcfileset file="${global.dist.dir}/libraries.xml"/>
            <srcfileset file="${project.build.dir}/libraries.xml"/>
            <srcfileset file="${project.build.dir}/launchers.xml"/>
            <targetfileset file="${project.tmp.dir}/project-metadata.xml
"/>
        </dependset>
        <x:dir-to-uri dir="${project.build.dir}/launchers.xml" property="
project.launchers.descriptor.uri"/>
        <xslt in="${project.build.dir}/libraries.xml" out="
${project.tmp.dir}/project-metadata.xml" style="
${global.build.dir}/generate-project-metadata.xslt">
            <param name="project-debug-flag" expression="
${project.debug.flag.boolean}"/>
            <param name="global-p4root-dir" expression="
${global.p4root.dir}"/>
            <param name="project-code" expression="${project.code}"/>
            <param name="project-uri" expression="${project.uri}"/>
            <param name="project-tmp-dir-rel" expression="
${project.tmp.dir.rel}"/>
            <param name="project-all-unit-locations" expression="
${project.all.unit.locations}"/>
            <param name="project-launchers-descriptor-uri" expression="
${project.launchers.descriptor.uri}"/>
            <param name="project-deployment-dir" expression="
${project.deployment.dir}"/>
            <param name="project-deployment-uri" expression="
${project.deployment.uri}"/>
            <param name="project-launchers-folder-name" expression="
${project.launchers.folder.name}"/>
            <xmlcatalog refid="xml-catalog"/>
        </xslt>
        <xmlproperty file="${project.tmp.dir}/project-metadata.xml" 
keeproot="no" prefix="project"/>
    </target>


Here is all the files involved in dependset ordered by its timestamps

2007-10-18 10:47:02.968712000 +0400 
/export/apps/tpbuild/trdproc/swhandler/dev/build/launchers.xml
2007-10-18 10:47:04.093958000 +0400 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.app.SWBusinessUpdateHandler/.classpath
2007-10-18 10:47:04.094348000 +0400 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.app.SWBusinessUpdateHandler/.project
2007-10-18 10:47:04.094456000 +0400 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.app.SWBusinessUpdateHandler/build.xml
2007-10-18 10:47:04.205116000 +0400 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.app.SWDealSink/.classpath
2007-10-18 10:47:04.205217000 +0400 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.app.SWDealSink/.project
2007-10-18 10:47:04.205377000 +0400 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.app.SWDealSink/build.xml
2007-10-18 10:47:04.205558000 +0400 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.app.SWDealSinkHandler/.classpath
2007-10-18 10:47:04.256329000 +0400 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.app.SWDealSinkHandler/.project
2007-10-18 10:47:04.256447000 +0400 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.app.SWDealSinkHandler/build.xml
2007-10-18 10:47:04.611558000 +0400 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.comp.Config/.classpath
2007-10-18 10:47:04.611779000 +0400 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.comp.Config/.project
2007-10-18 10:47:04.611910000 +0400 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.comp.Config/build.xml
2007-10-18 10:47:04.710560000 +0400 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.comp.SWDealSink/.project
2007-10-18 10:47:04.938316000 +0400 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.comp.Utils/.classpath
2007-10-18 10:47:04.938709000 +0400 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.comp.Utils/.project
2007-10-18 10:47:04.938804000 +0400 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.comp.Utils/build.xml
2007-12-17 15:38:22.579139000 +0300 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.app.NovationEmailer/.classpath
2007-12-17 15:38:22.639438000 +0300 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.app.NovationEmailer/.project
2007-12-17 15:38:22.699555000 +0300 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.app.NovationEmailer/build.xml
2008-02-22 14:14:10.102591000 +0300 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.app.SWBusinessHandler/.classpath
2008-02-22 14:14:10.104269000 +0300 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.app.SWBusinessHandler/.project
2008-02-22 14:14:10.116413000 +0300 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.app.SWBusinessHandler/build.xml
2008-03-06 12:55:37.846305000 +0300 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.app.SWDealSinkHandlerSwitcher/build.xml
2008-03-06 12:55:38.003297000 +0300 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.app.SWDealSinkHandlerSwitcher/.classpath
2008-03-06 12:55:38.004725000 +0300 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.app.SWDealSinkHandlerSwitcher/.project
2008-03-06 16:05:12.872139000 +0300 
/export/apps/tpbuild/trdproc/_infrastructure/dist/libraries.xml
2008-03-06 16:05:40.736998000 +0300 
/export/apps/tpbuild/trdproc/_infrastructure/lib/libraries.xml
2008-03-06 16:05:40.984057000 +0300 
/export/apps/tpbuild/trdproc/swhandler/dev/build/libraries.xml
2008-03-06 16:05:40.996537000 +0300 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.comp.SWDealSink/.classpath
2008-03-06 21:14:50.313841000 +0300 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.comp.SWDealSink/build.xml
2008-03-07 11:43:24.007690000 +0300 
/export/apps/tpbuild/trdproc/swhandler/dev/.tmp/project-metadata.xml

As you can see, the target file (the last one) is the newest one but the 
ant outputs the following:

load-project-metadata:
fileset: Setup scanner in dir 
/export/apps/tpbuild/trdproc/_infrastructure/lib with patternSet{ 
includes: [libraries.xml] excludes: [] }
fileset: Setup scanner in dir 
/export/apps/tpbuild/trdproc/_infrastructure/dist with patternSet{ 
includes: [libraries.xml] excludes: [] }
fileset: Setup scanner in dir 
/export/apps/tpbuild/trdproc/swhandler/dev/build with patternSet{ 
includes: [libraries.xml] excludes: [] }
fileset: Setup scanner in dir 
/export/apps/tpbuild/trdproc/swhandler/dev/build with patternSet{ 
includes: [launchers.xml] excludes: [] }
fileset: Setup scanner in dir 
/export/apps/tpbuild/trdproc/swhandler/dev/.tmp with patternSet{ includes: 
[project-metadata.xml] excludes: [] }
[dependset] 
/export/apps/tpbuild/trdproc/swhandler/dev/.tmp/project-metadata.xml is 
oldest target file

If I change the timestamp of the target file 

touch -t 200701010000 
/export/apps/tpbuild/trdproc/swhandler/dev/.tmp/project-metadata.xml

so that it become the oldest file 

2007-01-01 00:00:00.000000000 +0300 
/export/apps/tpbuild/trdproc/swhandler/dev/.tmp/project-metadata.xml
2007-10-18 10:47:02.968712000 +0400 
/export/apps/tpbuild/trdproc/swhandler/dev/build/launchers.xml
2007-10-18 10:47:04.093958000 +0400 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.app.SWBusinessUpdateHandler/.classpath
2007-10-18 10:47:04.094348000 +0400 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.app.SWBusinessUpdateHandler/.project
2007-10-18 10:47:04.094456000 +0400 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.app.SWBusinessUpdateHandler/build.xml
2007-10-18 10:47:04.205116000 +0400 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.app.SWDealSink/.classpath
2007-10-18 10:47:04.205217000 +0400 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.app.SWDealSink/.project
2007-10-18 10:47:04.205377000 +0400 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.app.SWDealSink/build.xml
2007-10-18 10:47:04.205558000 +0400 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.app.SWDealSinkHandler/.classpath
2007-10-18 10:47:04.256329000 +0400 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.app.SWDealSinkHandler/.project
2007-10-18 10:47:04.256447000 +0400 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.app.SWDealSinkHandler/build.xml
2007-10-18 10:47:04.611558000 +0400 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.comp.Config/.classpath
2007-10-18 10:47:04.611779000 +0400 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.comp.Config/.project
2007-10-18 10:47:04.611910000 +0400 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.comp.Config/build.xml
2007-10-18 10:47:04.710560000 +0400 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.comp.SWDealSink/.project
2007-10-18 10:47:04.938316000 +0400 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.comp.Utils/.classpath
2007-10-18 10:47:04.938709000 +0400 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.comp.Utils/.project
2007-10-18 10:47:04.938804000 +0400 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.comp.Utils/build.xml
2007-12-17 15:38:22.579139000 +0300 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.app.NovationEmailer/.classpath
2007-12-17 15:38:22.639438000 +0300 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.app.NovationEmailer/.project
2007-12-17 15:38:22.699555000 +0300 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.app.NovationEmailer/build.xml
2008-02-22 14:14:10.102591000 +0300 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.app.SWBusinessHandler/.classpath
2008-02-22 14:14:10.104269000 +0300 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.app.SWBusinessHandler/.project
2008-02-22 14:14:10.116413000 +0300 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.app.SWBusinessHandler/build.xml
2008-03-06 12:55:37.846305000 +0300 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.app.SWDealSinkHandlerSwitcher/build.xml
2008-03-06 12:55:38.003297000 +0300 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.app.SWDealSinkHandlerSwitcher/.classpath
2008-03-06 12:55:38.004725000 +0300 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.app.SWDealSinkHandlerSwitcher/.project
2008-03-06 16:05:12.872139000 +0300 
/export/apps/tpbuild/trdproc/_infrastructure/dist/libraries.xml
2008-03-06 16:05:40.736998000 +0300 
/export/apps/tpbuild/trdproc/_infrastructure/lib/libraries.xml
2008-03-06 16:05:40.984057000 +0300 
/export/apps/tpbuild/trdproc/swhandler/dev/build/libraries.xml
2008-03-06 16:05:40.996537000 +0300 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.comp.SWDealSink/.classpath
2008-03-06 21:14:50.313841000 +0300 
/export/apps/tpbuild/trdproc/swhandler/dev/modules/swhandler.comp.SWDealSink/build.xml

the ant outputs the same

load-project-metadata:
fileset: Setup scanner in dir 
/export/apps/tpbuild/trdproc/_infrastructure/lib with patternSet{ 
includes: [libraries.xml] excludes: [] }
fileset: Setup scanner in dir 
/export/apps/tpbuild/trdproc/_infrastructure/dist with patternSet{ 
includes: [libraries.xml] excludes: [] }
fileset: Setup scanner in dir 
/export/apps/tpbuild/trdproc/swhandler/dev/build with patternSet{ 
includes: [libraries.xml] excludes: [] }
fileset: Setup scanner in dir 
/export/apps/tpbuild/trdproc/swhandler/dev/build with patternSet{ 
includes: [launchers.xml] excludes: [] }
fileset: Setup scanner in dir 
/export/apps/tpbuild/trdproc/swhandler/dev/.tmp with patternSet{ includes: 
[project-metadata.xml] excludes: [] }
[dependset] 
/export/apps/tpbuild/trdproc/swhandler/dev/.tmp/project-metadata.xml is 
oldest target file

But if I remove the target file then the exception disappears.

This problem happens on Solaris but doesn't happen on windows.





<[EMAIL PROTECTED]> 
07.03.2008 10:38
Please respond to
"Ant Users List" <user@ant.apache.org>


To
<user@ant.apache.org>
cc

Subject
AW: NullPointerException






Can you post the snippet around the <dependendset>?

Jan 

> -----Ursprüngliche Nachricht-----
> Von: Alexander Pavlenko [mailto:[EMAIL PROTECTED] 
> Gesendet: Freitag, 7. März 2008 08:25
> An: Ant Users List
> Betreff: NullPointerException
> 
> Please advise, why can this happen?
> 
> java.lang.NullPointerException
>         at 
> org.apache.tools.ant.types.resources.Sort$SortedBag$MutableInt
.access$100(Sort.java:44)
>         at 
> org.apache.tools.ant.types.resources.Sort$SortedBag$MyIterator
.next(Sort.java:60)
>         at 
> org.apache.tools.ant.types.resources.FailFast.next(FailFast.java:115)
>         at 
> org.apache.tools.ant.taskdefs.DependSet.uptodate(DependSet.java:233)
>         at 
> org.apache.tools.ant.taskdefs.DependSet.execute(DependSet.java:202)
>         at 
> org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288)
>         at sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source)
>         at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMeth
> odAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:585)
>         at 
> org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUt
> ils.java:105)
>         at org.apache.tools.ant.Task.perform(Task.java:348)
>         at org.apache.tools.ant.Target.execute(Target.java:357)
>         at org.apache.tools.ant.Target.performTasks(Target.java:385)
>         at 
> org.apache.tools.ant.Project.executeSortedTargets(Project.java:1329)
>         at 
> org.apache.tools.ant.helper.SingleCheckExecutor.executeTargets
> (SingleCheckExecutor.java:38)
>         at 
> org.apache.tools.ant.Project.executeTargets(Project.java:1181)
>         at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:416)
>         at 
> org.apache.tools.ant.taskdefs.CallTarget.execute(CallTarget.java:105)
>         at 
> org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288)
>         at sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source)
>         at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMeth
> odAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:585)
>         at 
> org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUt
> ils.java:105)
>         at org.apache.tools.ant.Task.perform(Task.java:348)
>         at org.apache.tools.ant.Target.execute(Target.java:357)
>         at org.apache.tools.ant.Target.performTasks(Target.java:385)
>         at 
> org.apache.tools.ant.Project.executeSortedTargets(Project.java:1329)
>         at 
> org.apache.tools.ant.Project.executeTarget(Project.java:1298)
>         at 
> org.apache.tools.ant.helper.DefaultExecutor.executeTargets(Def
> aultExecutor.java:41)
>         at 
> org.apache.tools.ant.Project.executeTargets(Project.java:1181)
>         at org.apache.tools.ant.Main.runBuild(Main.java:698)
>         at org.apache.tools.ant.Main.startAnt(Main.java:199)
>         at org.apache.tools.ant.launch.Launcher.run(Launcher.java:257)
>         at 
> org.apache.tools.ant.launch.Launcher.main(Launcher.java:104)
> 
> ---
> 
> This e-mail may contain confidential and/or privileged 
> information. If you are not the intended recipient (or have 
> received this e-mail in error) please notify the sender 
> immediately and delete this e-mail. Any unauthorized copying, 
> disclosure or distribution of the material in this e-mail is 
> strictly forbidden.
> 
> Please refer to 
> http://www.db.com/en/content/eu_disclosures.htm for 
> additional EU corporate and regulatory disclosures.
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




---

This e-mail may contain confidential and/or privileged information. If you are 
not the intended recipient (or have received this e-mail in error) please 
notify the sender immediately and delete this e-mail. Any unauthorized copying, 
disclosure or distribution of the material in this e-mail is strictly forbidden.

Please refer to http://www.db.com/en/content/eu_disclosures.htm for additional 
EU corporate and regulatory disclosures.

Reply via email to