Java Mailing List Archive

http://www.ant-tasks.com/

Apache Ant Archive

» Ant Users List
» Ant Developers List
Location attribute in property not resolving correctly

Location attribute in property not resolving correctly

2006-10-05       - By Steve Loughran
Reply:     <<     11     12     13     14     15  

Rebhan, Gilbert wrote:
> Hi,
>
> still no solution ?
> Should i fill a bug report about that behaviour
> of <propertyfile file="... " />
>
> resulting in a deformed path, f.e.
>
> Y:/bla/corba.jar >>> Y\:/bla/corba.jar
>
> ?!
>
> see example below
>
> same result with ant 1.7.0 beta2
>
>
> Regards, Gilbert
>
> -----Original Message-----
> From: Rebhan, Gilbert [mailto:Gilbert.Rebhan@(protected)]
> Sent: Wednesday, September 27, 2006 8:03 AM
> To: Ant Users List
> Subject: RE: Location attribute in property not resolving correctly
>
>  
> Hi,
>
> strange =
>
> <project name="bla" default="main" basedir=".">
>     <!-- Import AntContrib -->
>     <taskdef resource="net/sf/antcontrib/antlib.xml" />
>     <target name="depends">
>         <timestampselector
>             outputsetid="mypath"
>             count="1"
>             age="eldest" >
>         <path>
>             <fileset dir="Y:/bla">
>                 <include name="*.jar" />
>             </fileset>
>         </path>
>         </timestampselector>
>         <pathconvert refid="mypath" property="myfixedpath"
> targetos="unix"/>
>         <echo>myfixedpath === ${myfixedpath}</echo>
>
>         <echo
> file="Y:/bla/foobar1.properties">filepath=${myfixedpath}</echo>
>         <echo
> file="Y:/bla/foobar2.properties">filepath=${myfixedpath}</echo>
>
>     </target>
>
>     <target name="main" depends="depends">
>         <propertyfile file="Y:/bla/foobar1.properties" />
>         <echo>Targetfile === ${filepath}</echo>
>     </target>
> </project>
>


> foobar1.properties, the file which is loaded in the main target looks
> like =
> #Wed Sep 27 07:53:37 CEST 2006
> filepath=Y\:/bla/corba.jar
>
> foobar2.properties looks like =
> filepath=Y:/bla/corba.jar


> so it seems like the timestamp gets added when loading the propertyfile
> with <propertyfile file="..."> but what is really fishy is that the path
> goes bad
>
> from : Y:/bla/corba.jar to: Y\:/bla/corba.jar

1. Timestamps go in when the file is created,  using <propertyfile>,
which delegates to Properties.store()
2. It is correct to escape the : with a \ , as this is what
Properties.store() does.


http://java.sun.com/j2se/1.4.2/docs/api/java/util/Properties.html#load(java.io
.InputStream)


>
> What's responsible for that ?

Sun

> and
> how to make the example above working ?

I dont wee why escaping the \: should matter, as when the properties get
loaded in the escape should be removed and you get what you originally
asked for.

-steve

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@(protected)
For additional commands, e-mail: user-help@(protected)


©2008 ant-tasks.com - Jax Systems, LLC, U.S.A.