A lista de materiais da API Google Ads
(BOM)
gerencia versões de dependência para evitar conflitos com bibliotecas como
Guava e GAX, que também são usadas por outras estruturas. A BOM garante que você use as versões exatas dessas dependências que foram testadas com a biblioteca de cliente da API Google Ads.
Essa é a maneira recomendada de usar os artefatos da biblioteca de cliente.
Configuração do Maven {#maven-configuration}
A dependência do Maven é:
<!-- Import the Bill of Materials (BOM) to ensure you're using compatible
versions of all google-ads libraries. -->
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.google.api-ads</groupId>
<artifactId>google-ads-bom</artifactId>
<version>44.0.0</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<!-- Add the google-ads dependency, without a version. The version is
managed by the BOM. -->
<dependency>
<groupId>com.google.api-ads</groupId>
<artifactId>google-ads</artifactId>
</dependency>
Configuração do Gradle
A dependência do Gradle é:
// Import the Bill of Materials (BOM).
implementation platform('com.google.api-ads:google-ads-bom:44.0.0')
// Add the google-ads dependency, without a version.
implementation 'com.google.api-ads:google-ads'
Como declarar dependências cobertas pela BOM
A BOM da
API Google Ads inclui o gerenciamento de versões para várias bibliotecas comuns, como Guava,
Protobuf, GAX e gRPC. Para evitar possíveis conflitos de dependência, não especifique uma versão ao declarar dependências cobertas pela BOM.
A BOM gerencia automaticamente as versões dessas bibliotecas, garantindo a compatibilidade.
Por exemplo, para declarar a dependência Guava no Maven, use o seguinte:
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<!-- NO VERSION SPECIFIED -->
</dependency>
E no Gradle:
implementation 'com.google.guava:guava' // NO VERSION SPECIFIED
Ao omitir a versão, você permite que a BOM a gerencie, o que ajuda a evitar problemas causados por versões de dependência incompatíveis. Os indicadores comuns de conflitos de dependência incluem NoSuchMethodError ou ClassNotFoundException, que geralmente podem ser resolvidos garantindo que todas as dependências gerenciadas pela BOM não tenham uma versão especificada.