Ok, esto debería ser fácil ...maravilloso (Archivo IO): encontrar todos los archivos y devolver todos los ficheros - la forma maravillosa
Soy nuevo en Groovy y estoy mirando para poner en práctica la siguiente lógica:
def testFiles = findAllTestFiles();
Hasta ahora, he encontrado el siguiente código que imprime con éxito todos los nombres de archivos. Sin embargo, en lugar de imprimir, solo necesito ponerlos en una colección. Por supuesto, podría hacer esto a la antigua usanza de Java: simplemente crear una colección de instancias, agregar todos los elementos y devolverlos. Sin embargo, eso no me enseñaría nada.
Entonces, ¿cómo se hace esto la forma genial, "Groovy"?
static File[] findAllTestFiles() {
def directory = new File("src/test/java");
def closure = {File f -> if(f.name =~ /Test\.java$/) println f }
directory.eachFileRecurse FileType.FILES, closure
return null;
}
Estoy mirando para poner en práctica findAlltestFiles() en Groovy utilizando como poco código como sea posible sin dejar de ser legible.
Siento que realmente necesito la lista de archivos, pero probablemente estoy equivocado (ya que esta es mi primera clase de Groovy, nunca). Consideraré su primera sugerencia más a fondo, parece una ** gran ** visión. Voy a tener que jugar con esto para comprender completamente lo que estás diciendo y cómo aplicarlo: ¡esta es una manera completamente diferente de pensar las cosas! Me gusta ... Groovy está creciendo en mí, rápido. – gMale
He vuelto a escribir toda la secuencia de comandos, tratando de diseñar con * cierres * en mente. A veces, todavía me duele un poco la cabeza pensarlo profundamente. Pero estoy vendido en Groovy así que conseguiré algunos libros y comenzaré a dominar este nuevo enfoque. Estoy emocionado de aprender a usar Groovy Console ... gracias por tu ayuda. – gMale