Hi, I tried it too. It doesn't work -nested args are ignored- :( I forgot to say that I'm running ant in java 1.5.
I changed ant's libs (I used again ant 1.6) and args work (arg line arg value, it doesn't matter). But I need to use ant 1.7 :/ 2008/4/28, David Weintraub <[EMAIL PROTECTED]>: > > What if you used the <arg value="xx"/> instead of <arg line="xx xx xx"/>? > > That is: > > <exec executable="chmod" > timeout="${timeout}" > failonerror="true"> > <arg value="-R" > <arg value="${dirMask}" > <arg value="${path}"/> > </exec> > > On Mon, Apr 28, 2008 at 3:20 AM, Xavi <[EMAIL PROTECTED]> wrote: > > Hi, I'm migrating an app from Ant 1.6.1 to Ant 1.7.0, and I have > problems > > with exec tasks. Ant execute task without passing arguments to process! > > > > For example, I have this task definition: > > > > <project name="permision" default="permision" basedir="."> > > > > <property name="timeout" value="120000" /> > > > > <target name="permision"> > > > > <echo message="Modify directories permissions ${path}, > mask > > ${dirMask}" /> > > > > <exec executable="chmod" > > timeout="${timeout}" > > failonerror="true"> > > > > <arg line="-R ${dirMask} ${path}" /> > > > > </exec> > > > > <echo message="Modify files permissions ${path}, mask > > ${fileMask}" /> > > > > <exec executable="/data/bin/ant/permisions.sh" > > timeout="${timeout}" > > failonerror="true"> > > > > <arg line="${path} ${fileMask}" /> > > > > </exec> > > > > </target> > > > > </project> > > > > An easy one, and works ok with Ant 1.6, as you can see in logs: > > > > (...) > > 23 Apr 2008 17:31:10 [INFO ] Modify directories permissions > > /data/servers/ftp, mask 755 > > 23 Apr 2008 17:31:10 [DEBUG] Task "echo"finished > > 23 Apr 2008 17:31:10 [DEBUG] Task "exec" started > > 23 Apr 2008 17:31:10 [DEBUG] Current OS is AIX > > 23 Apr 2008 17:31:10 [DEBUG] Executing 'chmod' with arguments: > > '-R' > > '755' > > '/data/servers/ftp' > > > > The ' characters around the executable and arguments are > > not part of the command. > > 23 Apr 2008 17:31:10 [DEBUG] Execute:Java13CommandLauncher: Executing > > 'chmod' with arguments: > > '-R' > > '755' > > '/data/servers/ftp > > > > The ' characters around the executable and arguments are > > not part of the command. > > 23 Apr 2008 17:31:10 [INFO ] > > (...) > > > > > > With Ant 1.7.0 I get this log: > > > > 24 Apr 2008 15:49:42 [DEBUG] Task "echo" started > > 24 Apr 2008 15:49:42 [INFO ] Modify directories permissions > > /data/servers/ftp, mask 777 > > 24 Apr 2008 15:49:42 [DEBUG] Task "echo"finished > > 24 Apr 2008 15:49:42 [DEBUG] Task "exec" started > > 24 Apr 2008 15:49:42 [DEBUG] Current OS is AIX > > 24 Apr 2008 15:49:42 [DEBUG] Executing 'chmod' > > The ' characters around the executable and arguments are > > not part of the command. > > 24 Apr 2008 15:49:42 [DEBUG] Execute:Java13CommandLauncher: Executing > > 'chmod' > > The ' characters around the executable and arguments are > > not part of the command. > > 24 Apr 2008 15:49:42 [INFO ] Usage: chmod [-R] [-f] [-h] {u|g|o|a ...} > > {+|-|=} {r|w|x|X|s|t ...} File ... > > 24 Apr 2008 15:49:42 [INFO ] chmod [-R] [-f] [-h] OctalNumber File ... > > 24 Apr 2008 15:49:42 [INFO ] Changes the permission codes for files or > > directories. > > 24 Apr 2008 15:49:42 [ERROR] Task "exec" finished with error (null) > > 24 Apr 2008 15:49:42 [ERROR] Target "permision" finished with error > (null) > > /data/bin/ant/permisions.xml:8: exec returned: 255 > > at > org.apache.tools.ant.taskdefs.ExecTask.runExecute(ExecTask.java:636) > > at org.apache.tools.ant.taskdefs.ExecTask.runExec(ExecTask.java:662) > > at org.apache.tools.ant.taskdefs.ExecTask.execute(ExecTask.java:487) > > at sun.reflect.GeneratedMethodAccessor16.invoke(Unknown Source) > > at > > > > > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > > at java.lang.reflect.Method.invoke(Method.java:618) > > at > > > org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:105) > > at org.apache.tools.ant.Task.perform(Task.java:348) > > at org.apache.tools.ant.Target.execute(Target.java:357) > > at org.apache.tools.ant.Target.performTasks(Target.java:385) > > at > org.apache.tools.ant.Project.executeSortedTargets(Project.java:1329) > > at org.apache.tools.ant.Project.executeTarget(Project.java:1298) > > at > > > > > org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) > > at org.apache.tools.ant.Project.executeTargets(Project.java:1181) > > at com.sbd.hardist.util.ant.AntProcess.execute(AntProcess.java:157) > > > > Ant task isn't receiving parameters! > > > > This task are executed using Ant's java api. If I execute task > manually, all > > goes ok too. And if I use deprecated <exec command, all goes fine too! > > > > Someone have an idea what's happening here? Thanks in advance! > > > > > > -- > -- > David Weintraub > [EMAIL PROTECTED] > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > >