If you are looking at this code, I'll like to point out another nit. (or
bug dealing with M$'s view of the world).
in *nix the cd command changes the current working directory.
In NT (Win9x?) the cd command changes the current working directory for a
drive specified (or the current drive if not specified).
so if I'm at c:\bin and I cd to to \temp, the current working directory is
\temp (as expected).
however, if I'm at c:\bin and I cd to d:\temp, then the current working
directory is still c:\bin, (and D's working directory is set to d:\temp).
So to change from c:\bin to d:\temp one must either
d: [to change to the d: drive]
cd \temp [or cd d:\temp]
or
pushd d:\temp [this will "pick-up" the drive change]
pushd will use the drive specifier, (so I use it a lot in my batch(.cmd)
files)
This was causing me grief with one of the earlier releases of Ant, I hacked
up a work-around for it, so I'm not sure if it is still a problem....
we use several network drives mounted on NT for development, and test/deploy
on Solaris, so I'm now switching our project to Ant for a common
cross-platform build process.
I hope this is helpful
GT
Alex Chaffee wrote:
> We've encountered an Ant bug over in JDOM land. I'm stumped on how to
> fix it.
>
> Briefly, Exec.java assumes that "windows" means "Windows NT" and
> invokes System.exec with a command line that breaks on Windows 95/98.
>
> ----- Forwarded message from Jason Hunter <[EMAIL PROTECTED]> -----
>
> The issue is that the Ant Exec.java task uses the "cmd" syntax as a way
> of handling change of directory duties:
>
> if (myos.toLowerCase().indexOf("windows") >= 0) {
> if (!dir.equals(project.resolveFile(".")))
> command = "cmd /c cd " + dir + " && " + command;
>
> This codepath has probably never before been exercised on Win98 because
> it seems to occur only when a "cd" is necessary. The original developer
> probably used NT to test, and I did likewise for the jdom-contrib area.
>
> ------------------------------
>
> At the very least, it should use the %COMSPEC% environment variable to
> identify command.com or cmd.exe as appropriate. But even that won't
> fix it, since "&&" syntax is not supported in command.com.
>
> Good luck! Please let me know if you make any progress fixing this.
>
> - Alex
>
> Alex Chaffee mailto:[EMAIL PROTECTED]
> jGuru - Java News and FAQs http://www.jguru.com/alex/
> Creator of Gamelan http://www.gamelan.com/
> Founder of Purple Technology http://www.purpletech.com/
> Curator of Stinky Art Collective http://www.stinky.com/