2013-06-04 8 views
5

Quando eseguo il seguente codice nella console (Groovy 2.1.3):Groovy (GPars) e MissingMethodException quando si chiama eachParallel()

strings = [ "butter", "bread", "dragon", "table" ] 
strings.eachParallel{println "$it0"} 

ottengo:

groovy.lang.MissingMethodException: No signature of method: java.util.ArrayList.eachParallel() is applicable for argument types: (ConsoleScript40$_run_closure1) values: [[email protected]] 

Chiunque può dire me quello che sto facendo di sbagliato?

risposta

8

Penso che manchi il set up. Prova

@Grab(group='org.codehaus.gpars', module='gpars', version='1.0.0') 
import groovyx.gpars.GParsPool 

GParsPool.withPool { 
    def strings = [ "butter", "bread", "dragon", "table" ] 
    strings.eachParallel { println it } 
} 
+0

Modificato nel caso, la dipendenza non è stata ancora risolta. – dmahapatro

+0

Grazie per quello Michael. Mi hai messo sulla giusta strada anche se non ero in grado di eseguire Grab come se fossi dietro un proxy. Guardando la tua risposta, sono riuscito a scoprire che la dipendenza gpars in grooyy-all's pom.xml è impostata su option = true. E ciò causa la dipendenza gpar da non includere per impostazione predefinita. Quindi aggiungere la dipendenza gpar esplicitamente al mio pom ha risolto il problema per me. – Armin

Problemi correlati