Analisar o gráfico de dependências

Informar um problema Ver código-fonte

Uma versão bem-sucedida tem todas as dependências explicitamente declaradas no arquivo BUILD. O Bazel usa essas instruções para criar o gráfico de dependências do projeto, o que permite versões incrementais precisas.

Para visualizar as dependências do projeto de amostra, é possível gerar uma representação de texto do gráfico de dependências executando este comando na raiz do espaço de trabalho:

bazel query --notool_deps --noimplicit_deps "deps(//main:hello-world)" \
  --output graph

O comando acima diz ao Bazel para procurar todas as dependências do //main:hello-world de destino (excluindo dependências implícitas de host) e formatar a saída como um gráfico.

Em seguida, cole o texto em GraphViz.

No Ubuntu, você pode ver o gráfico localmente instalando o GraphViz e o xdot Dot Viewer:

sudo apt update && sudo apt install graphviz xdot

Depois, gere e visualize o gráfico encadeando a saída de texto acima diretamente ao xdot:

xdot <(bazel query --notool_deps --noimplicit_deps "deps(//main:hello-world)" \
  --output graph)

Como você pode ver, a primeira etapa do projeto de amostra tem um único destino que cria um único arquivo de origem sem dependências extras:

Gráfico de dependência de &quot;hello-world&quot;

Figura 1. O gráfico de dependências de hello-world exibe um único destino com um único arquivo de origem.

Depois de configurar o espaço de trabalho, criar o projeto e analisar as dependências, adicione alguma complexidade.