There are bugs in Ant 1.3's tarfilest, but what you see is expected
behavior:
> <tar tarfile="${dist}/http-proxy.tar">
> <tarfileset dir="${build}/http.proxy" mode="755" username="0" group="0">
> <include name="${build}/http.proxy/**/*.sh"/>
> </tarfileset>
> <tarfileset dir="${build}/http.proxy" mode="644" username="0" group="0">
> <include name="{build}/http.proxy/**/*.jar"/>
> </tarfileset>
> </tar>
The include pattern is supposed to be relative to the dir attribute -
Ant doesn't find any files and therefore assumes the archive is
up-to-date.
Make that
<tar tarfile="${dist}/http-proxy.tar">
<tarfileset dir="${build}/http.proxy" mode="755" username="0" group="0">
<include name="**/*.sh"/>
</tarfileset>
<tarfileset dir="${build}/http.proxy" mode="644" username="0" group="0">
<include name="**/*.jar"/>
</tarfileset>
</tar>
Stefan