La distinta base (BOM) dell'API Google Ads gestisce le versioni delle dipendenze per evitare conflitti con librerie come Guava e GAX, utilizzate anche da altri framework. La BOM garantisce che
vengano utilizzate le versioni esatte di queste dipendenze che sono state testate con la
libreria client Google Ads.
Questo è il modo consigliato per utilizzare gli artefatti della libreria client.
Configurazione Maven {#maven-configuration}
La dipendenza 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>41.1.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>
Configurazione di Gradle
La dipendenza di Gradle è:
// Import the Bill of Materials (BOM).
implementation platform('com.google.api-ads:google-ads-bom:41.1.0')
// Add the google-ads dependency, without a version.
implementation 'com.google.api-ads:google-ads'
Dichiarazione delle dipendenze coperte dalla distinta materiali
La BOM dell'API Google Ads include la gestione delle versioni per diverse librerie comuni, come Guava, Protobuf, GAX e gRPC. Per evitare potenziali conflitti di dipendenze, non devi specificare una versione quando dichiari le dipendenze coperte dalla distinta materiali.
La distinta materiali gestisce automaticamente le versioni di queste librerie, garantendo
la compatibilità.
Ad esempio, per dichiarare la dipendenza Guava in Maven, utilizza quanto segue:
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<!-- NO VERSION SPECIFIED -->
</dependency>
E in Gradle:
implementation 'com.google.guava:guava' // NO VERSION SPECIFIED
Se ometti la versione, consenti alla distinta materiali di gestirla, il che contribuisce a evitare problemi
causati da versioni di dipendenze incompatibili. Gli indicatori comuni di conflitti di dipendenza includono NoSuchMethodError o ClassNotFoundException, che spesso possono essere risolti assicurandosi che tutte le dipendenze gestite dalla distinta materiali non abbiano una versione specificata.