2010-11-14 38 views
5

J'ai un appel à la tâche Ant exec qui doit accepter l'entrée de la console stdin. Malheureusement, je ne peux pas trouver un moyen de le faire. Le handle de fichier stdin semble fermé à l'entrée de la console lors de l'exécution.Tâche exec Ant: Comment puis-je lire les entrées de la console stdin?

Il est possible de spécifier une entrée en utilisant les attributs input et inputstring. Cependant, je dois demander une entrée de l'utilisateur sur la console.

Comment est-ce que je peux faire ceci?

Répondre

2

De l'documentation de la tâche:

Notez que vous ne pouvez pas interagir avec le programme fourchue , la seule façon d'envoyer entrée est via l'entrée et attributs inputString. Notez également que depuis Ant 1.6, toute tentative de lecture entrée dans le programme fourchu recevra un EOF (-1). Ceci est un changement de Ant 1.5, où une telle tentative bloquerait.

Vous pouvez essayer d'utiliser le input-task pour demander l'entrée dans la fourmilière buildfile et de transmettre ces données avec l'inputString attribut de exec. Je ne peux pas penser à une meilleure option pour le moment.