>>>>> "BL" == Brian Leonard <[EMAIL PROTECTED]> writes:

 BL> Seems they should be quoted in
 BL> ... types.Commandline.Argument.setValue(String)

No, the issue seems to be more difficult than that. The arguments are
passed to the subprocess as a String[] and everything you add via
setValue will take exactly one slot in this array.

If I run the attached ExecArray class on Linux, I get

[EMAIL PROTECTED] ~/jakarta/jakarta-ant >java ExecArray
Arg 0: 1
Arg 1: 2
Arg 2: 3
Arg 0: 1
Arg 1: 2 3
Arg 0: 1
Arg 1: "2 3"

on Windows NT the result is

[EMAIL PROTECTED] ~/jakarta/jakarta-ant >java ExecArray
Arg 0: 1
Arg 1: 2
Arg 2: 3
Arg 0: 1
Arg 1: 2 3
Arg 0: 1
Arg 1: 2 3

you see, exactly two arguments are passed to the subprocess - if I use
quotes around them or not doesn't matter. But I surely don't want the
quotes to become a literal part of my argument as I would on Linux
(and this is the correct behavior IMHO) - so I can not blindly add
quotes.

Reply via email to