Recibo un error cada vez que intento usar la función que se encuentra dentro de una tarea de rake. ¿Hay alguna forma de hacerlo funcionar?
El error dice "no existe ese archivo o directorio - (nombre de la tarea de rastrillo)"
Recibo un error cada vez que intento usar la función que se encuentra dentro de una tarea de rake. ¿Hay alguna forma de hacerlo funcionar?
El error dice "no existe ese archivo o directorio - (nombre de la tarea de rastrillo)"
Respuestas:
El problema es que Kernel#gets
(que es a lo que está llamando si solo lo usa gets
) asume que está extrayendo de un archivo nombrado por los argumentos pasados a Rake. Eso significa que gets
intenta devolver el contenido de un archivo llamado [rake-task-here], que es casi seguro que no existe.
Prueba STDIN.gets
.
$stdin
probablemente sea preferible STDIN
aquí, también vea stackoverflow.com/a/4279689/968531
No creo que deba usar get en una tarea de rake, si necesita obtener una entrada desde la línea de comando, probablemente debería pasarla como un parámetro, pero si publica algún código que no funciona, estoy seguro obtendrá una mejor respuesta.