public static void renderGraph(DAGNode<Component,Dependency> graph,
File graphvizFile) throws IOException, RecommenderBuildException {
logger.debug("graph has {} nodes", graph.getReachableNodes().size());
logger.debug("simulating instantiation");
RecommenderInstantiator instantiator = RecommenderInstantiator.create(graph);
DAGNode<Component, Dependency> unshared = instantiator.simulate();
logger.debug("unshared graph has {} nodes", unshared.getReachableNodes().size());
Closer close = Closer.create();
try {
Writer writer = close.register(new FileWriter(graphvizFile));
GraphWriter gw = close.register(new GraphWriter(writer));