ant-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Alan Pearlman Spencer" <Alan.PearlmanSpen...@Mobileaware.com>
Subject RE: Prompt
Date Mon, 12 Nov 2001 14:07:21 GMT
You should reply to the list, everyone can benefit from the answers.
These are new tasks so you need to add a taskdef.

  <taskdef name="ask-user"
classname="com.sns.tools.ant.taskdefs.AskUser"/>
You need to have the .class in your classpath in the
com.sns.tools.ant.taskdefs
package.
Maybe:
\jakarta-ant-1.4.1\classes\com\sns\tools\ant\taskdefs\AskUser.class
and add \jakarta-ant-1.4.1\classes\ to your classpath.

Or you could just jar up the directory "com" and add the jar to the
optional directory.

Let me know how it goes...
Alan.

-----Original Message-----
From: Krystan Honour [mailto:khonour@allstor-sw.co.uk]
Sent: 12 November 2001 13:57
To: Alan Pearlman Spencer
Subject: Re: Prompt


This looks good, I`m not sure how to go about using these tasks as I am
quite new to ant. I compile the src but where does the .class file want
to
be placed so that ant may see it ?
----- Original Message -----
From: "Alan Pearlman Spencer" <Alan.PearlmanSpencer@Mobileaware.com>
To: "Ant Users List" <ant-user@jakarta.apache.org>
Sent: Monday, November 12, 2001 1:33 PM
Subject: RE: Prompt


>
> Try this:
> http://www.mail-archive.com/ant-user@jakarta.apache.org/msg03059.html
> It has a custom task to ask the user a question...
> Alan.
>
> -----Original Message-----
> From: Krystan Honour [mailto:khonour@allstor-sw.co.uk]
> Sent: 12 November 2001 13:20
> To: Ant Users List
> Cc: pperevalov@cyber-asp.com
> Subject: Re: Prompt
>
>
> Hi,
>
> this is extremely useful. Only one problem I ran this successfully
under
> windows which prompted for a password that I use to sign my jars with
> and
> signed it. When I tried to use the same script under linux I get a
file
> not
> found exception because it can't find the file "con" ? which is asked
> for in
> the stream handler. Any ideas ?
>
> Krys
> ----- Original Message -----
> From: "Paul Perevalov" <pperevalov@cyber-asp.com>
> To: "Ant Users List" <ant-user@jakarta.apache.org>
> Sent: Friday, November 09, 2001 8:02 PM
> Subject: RE: Prompt
>
>
> >
> > You have to add in ant\lib directory bsf.jar from
> > http://oss.software.ibm.com/developerworks/projects/bsf for script
> task
> > and js.jar from http://www.mozilla.org/rhino/download.html for
> javascript
> > support.
> >
> > Paul Perevalov
> >
> > -----Original Message-----
> > From: Mark Claassen [mailto:mac@donnell.com]
> > Sent: Friday, November 09, 2001 2:52 PM
> > To: Ant Users List
> > Subject: RE: Prompt
> >
> >
> > Thanks!  It will take me a while to get through all this, but this
> sounds
> > like just the ticket.  Will ant run this just by itself, or do I
need
> > something to help it with the JavaScript?  I tried in using the
ant1.3
> that
> > is bundled in with netbeans 3.2.1 and it didn't work.  Maybe the
> optional
> > tasks are not included by default.
> >
> > Mark
> >
> > > -----Original Message-----
> > > From: Paul Perevalov [mailto:pperevalov@cyber-asp.com]
> > > Sent: Friday, November 09, 2001 12:16 PM
> > > To: Ant Users List
> > > Subject: RE: Prompt
> > >
> > >
> > > I wrote my own target which uses javascript to get some user input
> into
> > > properties and then run another tagets.
> > > You can place this target in common build file and then include it
> main
> > > build file.
> > > Here is the target itself, after this target you can find example
> > > how to use
> > > it.
> > >
> > > <target name="doTargetWithUserInput" description="Executes target
> > > where some
> > > parameters provided by user from kbd.">
> > > <script language="javascript"> <![CDATA[
> > >   importPackage(Packages.java.lang);
> > >   importPackage(Packages.java.io);
> > >   project = doTargetWithUserInput.getProject();
> > >   //get comma separated user prompts
> > >   var prompts = project.getProperty("prompts");
> > >   //get comma separated user properties which should be set
> > >   var properties = project.getProperty("properties");
> > >   //get comma separated targets to be executed
> > >   var targets = project.getProperty("targets");
> > >
> > >   //get standart input stream
> > >   var stdin = new BufferedReader(new InputStreamReader(new
> > > FileInputStream("con")));
> > >
> > >   //split prompts,properties and targets to arrays
> > >   var arrPrompts = Split(String(prompts),",");
> > >   var arrProperties = Split(String(properties),",");
> > >   var arrTargets = Split(String(targets),",");
> > >
> > >   //fail if number of properties does not match to number of
prompts
> > >   if(arrPrompts.length != arrProperties.length){
> > >    fail = project.createTask("fail");
> > >    fail.setMessage("Number of prompts does not match to the number
> of
> > > properties.");
> > >    fail.execute();
> > >   }
> > >
> > >   //get value for each property from user by showing corresponding
> prompt
> > >   var temp = "";
> > >   for (var i = 0; i < arrPrompts.length; i++){
> > >    System.out.println(arrPrompts[i]);
> > >    temp = stdin.readLine();
> > >    project.setProperty(arrProperties[i],temp);
> > >   }
> > >
> > >   //execute each target which now will have access to new
properties
> > >   for (var j = 0; j < arrTargets.length; j++){
> > >    project.executeTarget(arrTargets[j]);
> > >   }
> > >
> > >   function Split(Expression, Delimiter)
> > >   {
> > >    var temp = Expression;
> > >    var a, b = 0;
> > >    var array = new Array();
> > >
> > >    if (Delimiter.length == 0)
> > >    {
> > >         array[0] = Expression;
> > >         return (array);
> > >    }
> > >
> > >    if (Expression.length == '')
> > >    {
> > >         array[0] = Expression;
> > >         return (array);
> > >    }
> > >
> > >    Delimiter = Delimiter.charAt(0);
> > >
> > >    for (var i = 0; i < Expression.length; i++)
> > >    {
> > >         a = temp.indexOf(Delimiter);
> > >         if (a == -1)
> > >         {
> > >              array[i] = temp;
> > >              break;
> > >         }
> > >         else
> > >         {
> > >              b = (b + a) + 1;
> > >              var temp2 = temp.substring(0, a);
> > >              array[i] = temp2;
> > >              temp = Expression.substr(b,
> > > Expression.length - temp2.length);
> > >         }
> > >    }
> > >
> > >    return (array);
> > >   }
> > >
> > >   ]]></script>
> > > </target>
> > >
> > > Then you can use this target to get some user input and run
another
> > > target(s).
> > >
> > > <antcall target="doTargetWithUserInput">
> > >    <param name="prompts" value="Enter user ID:,Enter user
> password:"/>
> > >    <param name="properties" value="user,pwd"/>
> > >    <param name="targets" value="doSomething"/>
> > > </antcall>
> > >
> > > <target name="doSomething" description="Do something with user
> input">
> > >    <echo message="User id: ${user}, password : ${pwd}"/>
> > > </target>
> > >
> > > Hope this help.
> > >
> > > Paul Perevalov
> > >
> > > -----Original Message-----
> > > From: Mark Claassen [mailto:mac@donnell.com]
> > > Sent: Friday, November 09, 2001 11:51 AM
> > > To: ant-user@jakarta.apache.org
> > > Subject: Prompt
> > >
> > >
> > > Is there any way to prompt for information during a script
> > > (without writing
> > > a custom task)?  When I compile my code for release, we tag it in
> CVS.
> > We
> > > then use this tag name in the code to generate the version
numbers.
> > >
> > > What I would like to do is have ant prompt me for a tag and a
> > > branch.  Then
> > > it could automatically check out the correct tagged version of the
> files
> > > that contain the $Name$, compile it (with the $Name$ expanded),
> > > build jars,
> > > and then checkout the head of the branch again so I am where I
left
> off.
> > >
> > > I could do this with command line parameters as well, but using
> > > it this way
> > > in netbeans is a little less convenient.
> > >
> > > Thanks for your time,
> > > Mark
> > >
> > > ---------------------
> > > Mark Claassen
> > > Donnell Systems, Inc.
> > > 300 S. St. Louis Blvd. Ste. 203
> > > South Bend, IN 46617
> > > E-mail: mailto:mark.claassen@donnell.com
> > > Voice: (219)232-3784
> > > Fax: (219)232-4014
> > >
> > >
> > >
> > > --
> > > To unsubscribe, e-mail:
> > <mailto:ant-user-unsubscribe@jakarta.apache.org>
> > > For additional commands, e-mail:
> > <mailto:ant-user-help@jakarta.apache.org>
> > >
> > >
> > >
> > > --
> > > To unsubscribe, e-mail:
> > <mailto:ant-user-unsubscribe@jakarta.apache.org>
> > > For additional commands, e-mail:
> > <mailto:ant-user-help@jakarta.apache.org>
> > >
> >
> >
> > --
> > To unsubscribe, e-mail:
> <mailto:ant-user-unsubscribe@jakarta.apache.org>
> > For additional commands, e-mail:
> <mailto:ant-user-help@jakarta.apache.org>
> >
> >
> >
> > --
> > To unsubscribe, e-mail:
> <mailto:ant-user-unsubscribe@jakarta.apache.org>
> > For additional commands, e-mail:
> <mailto:ant-user-help@jakarta.apache.org>
> >
>
>
> --
> To unsubscribe, e-mail:
> <mailto:ant-user-unsubscribe@jakarta.apache.org>
> For additional commands, e-mail:
> <mailto:ant-user-help@jakarta.apache.org>
>
>
> --
> To unsubscribe, e-mail:
<mailto:ant-user-unsubscribe@jakarta.apache.org>
> For additional commands, e-mail:
<mailto:ant-user-help@jakarta.apache.org>
>


--
To unsubscribe, e-mail:   <mailto:ant-user-unsubscribe@jakarta.apache.org>
For additional commands, e-mail: <mailto:ant-user-help@jakarta.apache.org>


Mime
View raw message