Wannheden, Knut wrote:
If I'm not mistaken then a DCL script can only process a maximum of
8 arguments and the call to a DCL script from Java, including the
script filename and its arguments, can at the most be 256 characters
long.
I'm out of OpenVMs business for too long, to know whether you are
correct. Ken's suggestion of munging the arguments into a single one
and reparsing it afterwards may be feasible. Don't know about the
length limitations.
That's certainly a way to get around the parameter count limit, but leaves
me with even two characters less ;-)
Either this is a limitation users on VMS have to live with or a
different approach is required.
Users live with command line length limitations on all OSes, the
limits just vary. 256 is not much, I agree. If there is a different
solution, the go for it.
I found that you can't even use the full 256 characters from within Java.
Probably because the JVM uses SYS$SYSTEM:LOGINOUT.EXE to execute the script,
which again requires characters.
I have now implemented a strategy which allows me to both use longer
commands (up to 1024 characters) and use DCL verbs transparently. I just
write the command to a temporary .COM file and execute that.
I'd like to know how I can submit these patches. My goal would be to make
Ant fully VMS compatible. But I think this requires quite a lot of work.
For me it would be great if for now just the <exec> task would work.
What remains to be done:
1. Add a method Execute#isFailure(int result) or something similar
1.1 Modify <exec> to use this method
1.2 Update documentation of <exec>
2. Write a RUNANT.COM DCL sript for shell execution
3. Write a ANT.COM (and BUILD.COM) script
Task 1. (and 1.1, 1.2) should be easy.
2. could prove to be pretty hard as Java would actually pass a Unix style
path to the DCL script which would have to be parsed into a VMS filespec.
unless java does the VMS filespec generation
3. would be about to make Ant VMS compatible in general.
could you re-use the perl scripts?
I still haven't been able to run all the unit test. So I expect to have to
make some minor changes to those as well.
--
knut
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]