void (AntDomProject startProject, String initialTargetName) { myStage = Stage.RESOLVE_MAP_BUILDING_STAGE; startProject.accept(this); stageCompleted(Stage.RESOLVE_MAP_BUILDING_STAGE, Stage.TARGETS_WALKUP_STAGE); if (!myStopped) { myStage = Stage.TARGETS_WALKUP_STAGE; final AntDomTarget target = initialTargetName != null? getTargetByName(initialTargetName) : null; if (target != null) { processTarget(initialTargetName, target); } List<String> unprocessed = null; for (String s : myTargetsResolveMap.keySet()) { if (!myProcessedTargets.contains(s)) { if (unprocessed == null) { unprocessed = new ArrayList<>(); } unprocessed.add(s); } } if (unprocessed != null) { for (String targetName : unprocessed) { processTarget(targetName, myTargetsResolveMap.get(targetName)); } } } }