Analisar o gráfico de dependências

Informar um problema Mostrar fonte Por noite · 7,3 · 7,2 · 7,1 · 7,0 · 6,5

Um build bem-sucedido tem todas as dependências explicitamente declaradas no BUILD. . O Bazel usa essas instruções para criar o gráfico de dependências do projeto. o que permite builds incrementais precisos.

Para visualizar as dependências do projeto de exemplo, gere um arquivo de texto representação do gráfico de dependência. Basta executar o comando 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 destino //main:hello-world (excluindo dependências implícitas e de host) e formate o como um gráfico.

Depois, cole o texto no GraphViz.

No Ubuntu, é possível visualizar o gráfico localmente instalando o GraphViz e o xdot Visualizador de pontos:

sudo apt update && sudo apt install graphviz xdot

Em seguida, você pode gerar e visualizar o gráfico ao barrar a saída de texto acima direto para o xdot:

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

Como pode notar, a primeira etapa do exemplo de projeto tem um único objetivo que cria um único arquivo de origem sem dependências adicionais:

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

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

Depois de configurar seu espaço de trabalho, crie seu projeto e examine as dependências, você pode adicionar alguma complexidade.