Bibliotecas de cliente são interfaces específicas da linguagem para uma API. Neste documento, descrevemos como usar o Bazelisk, uma tela de início do Bazel (em inglês), para gerar bibliotecas de cliente para a API Routes for Automotive em várias linguagens de programação. O Bazelisk garante que a versão correta dele seja usada para executar os comandos de build.
O código necessário para gerar as bibliotecas está hospedado em um repositório privado do Gerrit. Para uma explicação de como as bibliotecas de cliente funcionam, consulte Explicações sobre bibliotecas de cliente.
Pré-requisitos
Requisitos de software
Instale o seguinte:
Requisitos de permissões
- O acesso ao repositório é fornecido aos membros de um grupo específico <partner>@google.com, gerenciado por um representante da sua empresa. Para ser adicionado a esse grupo, procure o ponto de contato da sua empresa ou o parceiro de negócios do Google.
Etapa 1: acessar o Gerrit
Para acessar o Gerrit:- Verifique se você concluiu os requisitos de permissão do repositório listados na seção Pré-requisitos.
- Crie uma Conta do Google com um endereço de e-mail corporativo seguindo as instruções em Criar uma Conta do Google.
- Ao criar uma Conta do Google, verifique se você não fez login em gmail.com ou em outra conta de serviços de domínio do Google antes de acessar a página de login da Conta do Google. Para garantir um perfil limpo, feche e reinicie o navegador e abra uma janela de navegação anônima (privada).
- Ao solicitar acesso para outras pessoas, crie uma conta para cada indivíduo que precisa de acesso. Em seguida, envie a lista de novas Contas do Google para seu parceiro de negócios do Google. Seu parceiro de negócios adicionará os endereços de e-mail aos grupos de acesso apropriados.
- Usando a Conta do Google que você acabou de criar, acesse https://partner-code.googlesource.com. Quando você acessar o host do Gerrit, um usuário será criado e conectado automaticamente para você.
- Em https://partner-code.googlesource.com, clique em Gerar senha. Siga as instruções na tela para selecionar sua Conta do Google, permitir o acesso a googlesource.com e seguir outras instruções.
- Quando um script aparecer, copie e cole no terminal.
Etapa 2: clonar os repositórios
Nesta etapa, você clonará os repositórios googleapis
e routes-auto-early-access
.
- Clone o repositório
routes-auto-early-access
:git clone https://partner-code.googlesource.com/routes-auto-early-access
- Clone o repositório público
googleapis
do Google:git clone https://github.com/googleapis/googleapis.git
Etapa 3: mesclar os repositórios
Nesta etapa, mova o subdiretório routes-auto-early-access/google/maps/routing/v2
para
googleapis/google/maps/routing/v2
.
- Depois de clonar os repositórios, verifique se o diretório de trabalho atual (
pwd
) inclui os subdiretóriosroutes-auto-early-access
egoogleapis
.. ├── routes-auto-early-access └── googleapis
- Crie um diretório
routing/v2
no local de destino e copierouting/v2
emgoogleapis/google/maps/routing/v2
:mkdir -p "googleapis/google/maps/routing/v2" && cp -R "routes-auto-early-access/google/maps/routing/v2" "googleapis/google/maps/routing"
Para confirmar se o diretório routing/v2
foi mesclado com o
diretório googleapis/google/maps/routing/v2
, acesse
googleapis/google/maps/routing/v2
.
A pasta precisa conter arquivos proto, um BUILD.bazel
e outros arquivos
necessários para o build.
Etapa 4: criar uma biblioteca de cliente usando o Bazelisk
Para criar a biblioteca de cliente para uma linguagem específica, identifique o destino de criação para esse
idioma no arquivo BUILD.bazel
(em
googleapis/google/maps/routing/v2/BUILD.bazel
) e crie esse destino. O name
de destino pode ser encontrado dentro dos objetos <LANGUAGE>_gapic_assembly_pkg
.
Consulte Como criar um destino na documentação do Bazel para mais informações.
Por exemplo, para criar a biblioteca de cliente Java, faça o seguinte:
- Altere para o diretório
googleapis
:cd googleapis
- Execute este comando:
bazelisk build google/maps/routing/v2:google-cloud-maps-routing-v2-java
Esse comando gera a biblioteca de cliente Java em
googleapis/bazel-bin/google/maps/routing/v2/google-cloud-maps-routing-v2-java.tar.gz
.
A tabela abaixo lista os comandos de build para cada linguagem disponível.
Idioma | Comando build do Bazelisk |
---|---|
Java | bazelisk build google/maps/routing/v2:google-cloud-maps-routing-v2-java
|
Go | bazelisk build google/maps/routing/v2:gapi-cloud-maps-routing-v2-go
|
PHP | bazelisk build google/maps/routing/v2:google-cloud-maps-routing-v2-php
|
Ruby | bazelisk build google/maps/routing/v2:google-cloud-maps-routing-v2-ruby
|
C# | bazelisk build google/maps/routing/v2:google-cloud-maps-routing-v2-csharp
|
Nó | bazelisk build google/maps/routing/v2:maps-routing-v2-nodejs
|
Incorporar atualizações quando há novos lançamentos
Quando houver novos lançamentos para a API, você precisará recriar as bibliotecas de cliente. Supondo que você já tenha clonado os repositórios seguindo as instruções nas seções anteriores, faça o seguinte para novas versões:
- Mude para o diretório de trabalho atual que contém os dois repositórios:
. ├── routes-auto-early-access └── googleapis
- Remova a instância anterior de
routing/v2
dentro degoogleapis/google/maps
:rm -rf googleapis/google/maps/routing/v2
- Acesse os repositórios
routes-auto-early-access
egoogleapis
e executegit pull
para receber as atualizações mais recentes. - Copie
routing/v2
emgoogleapis/google/maps/routing/v2
, como antes:mkdir -p "googleapis/google/maps/routing/v2" && cp -R "routes-auto-early-access/google/maps/routing/v2" "googleapis/google/maps/routing"
Para confirmar se o repositório
routing/v2
foi mesclado com o diretóriogoogleapis/google/maps/routing/v2
, acessegoogleapis/google/maps/routing/v2
. A pasta precisa conter arquivos proto, umBUILD.bazel
e outros arquivos necessários para o build do Bazel. - Execute os comandos de compilação do Bazelisk listados na seção anterior Etapa 4: criar uma biblioteca de cliente usando o Bazelisk.
Gerar Javadocs para a biblioteca de cliente Java
A biblioteca de cliente permite chamar a API Routes for Automotive usando as classes e os métodos específicos da linguagem. Infelizmente, a saída não inclui a documentação do Javadoc da biblioteca de cliente. Nesta seção, explicamos como gerar o Javadoc para a biblioteca de cliente Java.
Pré-requisitos
Para criar o Javadoc:
Verifique se você tem versões compatíveis do Gradle (8.0 ou mais recentes) e do JDK (17 ou anteriores) instaladas. Verifique as versões instaladas executando
./gradlew --version
ejava -version
no seu terminal.A biblioteca de cliente Java foi criada para o seguinte arquivo
tar.gz
, que será necessário extrair:googleapis/bazel-bin/google/maps/routing/v2/google-cloud-maps-routing-v2-java.tar.gz
.Supondo que você esteja no diretório
googleapis
, execute o comando a seguir, substituindo/PATH/TO/PARENT/DIRECTORY
pelo caminho escolhido para a biblioteca extraída:mkdir -p /PATH/TO/PARENT/DIRECTORY && tar -xzpf bazel-bin/google/maps/routing/v2/google-cloud-maps-routing-v2-java.tar.gz -C /PATH/TO/PARENT/DIRECTORY
Navegue até o diretório pai:
cd /PATH/TO/PARENT/DIRECTORY
No diretório
google-cloud-maps-routing-v2-java
, abra os arquivosbuild.gradle
em cada um dos seguintes diretórios:gapic-google-cloud-maps-routing-v2-java/build.gradle
grpc-google-cloud-maps-routing-v2-java/build.gradle
proto-google-cloud-maps-routing-v2-java/build.gradle
Verifique se cada uma contém as tarefas a seguir. Devido a um bug, substitua as duas tarefas e artefatos semelhantes por este código:
task javadocJar(type: Jar, dependsOn: javadoc) { archiveClassifier.set('javadoc') from javadoc.destinationDir } task sourcesJar(type: Jar) { archiveClassifier.set('sources') from sourceSets.main.allSource } artifacts { archives javadocJar }
Verifique se você está usando o Gradle 8.0 ou uma versão mais recente:
./gradlew --version
. Se sua versão for 7, faça o seguinte: no diretóriogoogle-cloud-maps-routing-v2-java
, exclua os arquivosgradlew
egradlew.bat
. Em seguida, executegradle wrapper --gradle-version=8.0
para mudar para a versão 8.0.No diretório
google-cloud-maps-routing-v2-java
, use o Gradle para criar os Javadocs:./gradlew build
O Javadoc gerado aparece nestes diretórios:
google-cloud-maps-routing-v2-java/gapic-google-cloud-maps-routing-v2-java/build/docs/javadoc
google-cloud-maps-routing-v2-java/grpc-google-cloud-maps-routing-v2-java/build/docs/javadoc
google-cloud-maps-routing-v2-java/proto-google-cloud-maps-routing-v2-java/build/docs/javadoc
Abra o arquivo
overview-tree.html
de cada diretório usando um navegador da Web.