Java - Analizando el archivo de texto

Tengo un archivo de texto de entrada en este formato:

<target1> : <dep1> <dep2> ...
<target2> : <dep1> <dep2> ...
...

Y un método que toma dos parámetros

function(target, dep);

Necesito obtener este análisis para llamar a mi método con cada objetivo y dep, por ejemplo:

function(target1, dep1);
function(target1, dep2);
function(target1, ...);
function(target2, dep1);
function(target2, dep2);
function(target2, ...);

¿Cuál sería la forma más eficiente de llamar afunction(target,dep) en cada línea de un archivo de texto? Traté de perder el tiempo con el escáner y string.split pero no tuve éxito. Estoy perplejo

Gracias

Respuestas a la pregunta(2)

Su respuesta a la pregunta