>I wrote the following simple code to map a NT drive to some path: > > <target name="map_drive" depends="" description="--> description"> > <exec executable="cmd.exe"> > <arg value="NET USE N: \\cm-web01"/> > </exec> > </target> > >And once I execute it, I get the following errors: > > "The ' characters around the executable and arguments are not part of the command."
Where is the problem? This is not an error message, it is just for information. Your log: Apache Ant version 1.7.0 compiled on December 13 2006 Buildfile: C:\Documents and Settings\yonae\workspace\web_build\test.xml parsing buildfile C:\Documents and Settings\yonae\workspace\web_build\test.xml with URI = file:/C:/Documents%20and%20Settings/yonae/workspace/web_build/test.xml Project base dir set to: C:\Documents and Settings\yonae\workspace\web_build Build sequence for target(s) `map_drive' is [map_drive] Complete build sequence is [map_drive, full_build, ] map_drive: [antlib:org.apache.tools.ant] Could not load definitions from resource org/apache/tools/ant/antlib.xml. It could not be found. [exec] Current OS is Windows XP [exec] Executing 'cmd.exe' with arguments: [exec] 'NET USE N: \\cm-web01' [exec] [exec] The ' characters around the executable and arguments are [exec] not part of the command. [exec] Microsoft Windows XP [Version 5.1.2600] [exec] (C) Copyright 1985-2001 Microsoft Corp. [exec] C:\Documents and Settings\yonae\workspace\web_build> BUILD SUCCESSFUL Total time: 250 milliseconds The build finished successful, no error messages from/inside cmd.exe ... I tried your code and there are two problems: 1. use <arg line> instead of <arg value> because spaces must not be masked 2. use a leading "/C" because cmd.exe needs that ... <project> <property name="drive" value="B:"/> <property name="unc" value="\\computer\share"/> <exec executable="cmd.exe"> <arg line="/C NET USE ${drive} ${unc}"/> </exec> </project> Tried out with $net use $ant $net use ant I could see that the drive was not connected before and was connected after the Ant run. If you want to encapsulate this command you could use <macrodef> for that. <project> <macrodef name="mapdrive"> <attribute name="drive"/> <attribute name="unc"/> <sequential> <exec executable="cmd.exe" taskname="mapdrive"> <arg line="/C NET USE @{drive} @{unc}"/> </exec> </sequential> </macrodef> <macrodef name="unmapdrive"> <attribute name="drive"/> <sequential> <exec executable="cmd.exe" taskname="unmapdrive"> <arg line="/C NET USE @{drive} /D"/> </exec> </sequential> </macrodef> <target name="map"> <mapdrive drive="B:" unc="\\L011benutzer\f007777"/> </target> <target name="unmap"> <unmapdrive drive="B:"/> </target> </project> Next step would be a "windows AntLib" .... ;) Jan Jan --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]