I believe you must call "cmd" and pass it a "/c" option (w/ your set command
here)-- Or else make a BAT file and call it w/ the "/c". 
Cheers,
-- Chris

> -----Original Message-----
> From: Prabhakar Chaganti [mailto:[EMAIL PROTECTED]]
> Sent: Tuesday, July 31, 2001 9:10 AM
> To: [EMAIL PROTECTED]
> Subject: Setting a W2K environment variable from build.xml
> 
> 
> Hi all:
> 
> I am using ant version 1.4alpha on Win2K running JDK 1.3.0.
> 
> I need to set an environment variable in W2K such as APP_HOME, 
> before my task executes. This can be done from a shell by doing:
>       "set APP_HOME=c:\apphome"
> 
> I am trying to use the following fragment to accomplish the same 
> thing from inside my build.xml:
>           <target name="test">
>                       <exec executable="set" os="Windows 2000">
>                       <arg line="APP_HOME=c:\apphome" />
>                       </exec>
>               </target>
> 
> This fails with the following error:
>         Execute failed: java.io.IOException: CreateProcess: 
> set           
>               APP_HOME=c:\apphome error=2
>         --- Nested Exception ---
>         java.io.IOException: CreateProcess: set               
>                               
>                       APP_HOME=c:\apphome error=2
>                 at java.lang.Win32Process.create(Native Method)
>                 at java.lang.Win32Process.<init>(Win32Process.java:66)
>                 at java.lang.Runtime.execInternal(Native Method)
>                 at java.lang.Runtime.exec(Runtime.java:551)
>                 at java.lang.reflect.Method.invoke(Native Method)
>                 at                                            
>                               
> org.apache.tools.ant.taskdefs.Execute$Java13CommandLauncher.ex
> ec(Execute.java:564)
>                 at 
> org.apache.tools.ant.taskdefs.Execute.execute(Execute.java:384)
>                 at 
> org.apache.tools.ant.taskdefs.ExecTask.runExecute(ExecTask.java:2
> 38)
>                 at 
> org.apache.tools.ant.taskdefs.ExecTask.runExec(ExecTask.java:254)
>                 at 
> org.apache.tools.ant.taskdefs.ExecTask.execute(ExecTask.java:165)
>                 at org.apache.tools.ant.Task.perform(Task.java:240)
>                 at 
> org.apache.tools.ant.Target.execute(Target.java:164)
>                 at 
> org.apache.tools.ant.Target.performTasks(Target.java:182)
>                 at 
> org.apache.tools.ant.Project.executeTarget(Project.java:568)
>                 at 
> org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:252)
>                 at 
> org.apache.tools.ant.taskdefs.CallTarget.execute(CallTarget.java:120)
>                 at org.apache.tools.ant.Task.perform(Task.java:240)
>                 at 
> org.apache.tools.ant.Target.execute(Target.java:164)
>                 at 
> org.apache.tools.ant.Target.performTasks(Target.java:182)
>                 at 
> org.apache.tools.ant.Project.executeTarget(Project.java:568)
>                 at 
> org.apache.tools.ant.Project.executeTargets(Project.java:527)
>                 at org.apache.tools.ant.Main.runBuild(Main.java:453)
>                 at org.apache.tools.ant.Main.start(Main.java:154)
>                 at org.apache.tools.ant.Main.main(Main.java:177)
> 
> 
> Can anyone point out what is wrong with the xml. I looked at the list 
> archives, and some people suggested using a batch file just to set 
> the environment variables. Is this the only option ?
> 
> Any info truly appreciated.
> 
> thanks
> prabhakar
> 
> 
> 

Reply via email to