İstemci kitaplıkları, API'lerin dile özgü arayüzleridir. Bu dokümanda, çeşitli programlama dillerinde Routes API for Automotive için istemci kitaplıkları oluşturmak amacıyla Bazel başlatıcısı olan Bazelisk'in nasıl kullanılacağı açıklanmaktadır. Bazelisk, derleme komutlarını yürütmek için Bazel'ın doğru sürümünün kullanılmasını sağlar.
Kitaplıkları oluşturmak için gereken kod, özel bir Gerrit deposunda barındırılır. İstemci kitaplıklarının işleyiş şekliyle ilgili bir açıklama için İstemci kitaplıklarının açıklaması bölümüne bakın.
Ön koşullar
Yazılım gereksinimleri
Aşağıdakileri yükleyin:
İzin gereksinimleri
- Depoya erişim, şirketinizin bir temsilcisi tarafından yönetilen belirli bir <partner>@google.com grubunun üyelerine sağlanır. Bu gruba eklenmek için şirketinizin irtibat kişisi veya Google iş ortağı ile iletişime geçin.
1. Adım: Gerrit'e erişin
Gerrit'e erişmek için:- Ön koşullar bölümünde listelenen depo izni koşullarını tamamladığınızdan emin olun.
- Google Hesabı Oluşturma başlıklı makaledeki talimatları uygulayarak kurumsal bir e-posta adresiyle bir Google Hesabı oluşturun.
- Google Hesabı oluştururken Google Hesabı'nda Oturum Açma sayfasını ziyaret etmeden önce gmail.com adresine veya başka bir Google alan hizmetleri hesabına giriş yapmadığınızdan emin olun. Profilinizin temiz olduğundan emin olmak için tarayıcınızı kapatıp yeniden başlatın ve bir gizli (gizli) tarama penceresi açın.
- Başkaları için erişim isteğinde bulunurken, erişime ihtiyacı olan her kullanıcı için bir hesap oluşturun. Ardından, yeni Google Hesaplarının listesini Google iş ortağınıza gönderin. İş ortağınız, e-posta adreslerini uygun erişim gruplarına ekleyecektir.
- Az önce oluşturduğunuz Google Hesabı'nı kullanarak https://partner-code.googlesource.com adresine gidin. Gerrit ana makinesine eriştiğinizde bir kullanıcı oluşturulur ve sizin için otomatik olarak giriş yapılır.
- https://partner-code.googlesource.com adresinde Şifre Oluştur'u tıklayın. Google Hesabınızı seçmek, googlesource.com erişimine izin vermek ve ekrandaki diğer talimatları uygulamak için ekrandaki talimatları uygulayın.
- Bir komut dosyası sunulduğunda, komut dosyasını kopyalayıp terminalinize yapıştırın.
2. Adım: Depoları klonlayın
Bu adımda googleapis
ve routes-auto-early-access
depolarını klonlayacaksınız.
routes-auto-early-access
deposunu klonlayın:git clone https://partner-code.googlesource.com/routes-auto-early-access
- Herkese açık Google
googleapis
deposunu klonlayın:git clone https://github.com/googleapis/googleapis.git
3. Adım: Kod depolarını birleştirin
Bu adımda, routes-auto-early-access/google/maps/routing/v2
alt dizinini googleapis/google/maps/routing/v2
içine taşıyacaksınız.
- Depoları klonladıktan sonra mevcut çalışma dizininizin (
pwd
) hemroutes-auto-early-access
hem degoogleapis
alt dizinini içerdiğinden emin olun.. ├── routes-auto-early-access └── googleapis
- Hedef konumda bir
routing/v2
dizini oluşturun verouting/v2
dizininigoogleapis/google/maps/routing/v2
konumuna kopyalayın:mkdir -p "googleapis/google/maps/routing/v2" && cp -R "routes-auto-early-access/google/maps/routing/v2" "googleapis/google/maps/routing"
routing/v2
dizininin googleapis/google/maps/routing/v2
diziniyle başarıyla birleştirildiğini onaylamak için googleapis/google/maps/routing/v2
sayfasına gidin.
Klasör; proto dosyaları, bir BUILD.bazel
dosyası ve derleme için gerekli diğer dosyaları içermelidir.
4. Adım: Bazelisk kullanarak bir istemci kitaplığı oluşturun
Belirli bir dilde istemci kitaplığı oluşturmak için BUILD.bazel
dosyasında (googleapis/google/maps/routing/v2/BUILD.bazel
adresinde) bu dilin derleme hedefini belirleyin ve bu hedefi oluşturun. name
hedefini <LANGUAGE>_gapic_assembly_pkg
nesnelerinin içinde bulabilirsiniz.
Daha fazla bilgi için Bazel belgelerindeki Tek bir hedef oluşturma bölümüne bakın.
Örneğin, Java istemci kitaplığını oluşturmak için aşağıdakileri yapın:
googleapis
dizinine geçin:cd googleapis
- Şu komutu çalıştırın:
bazelisk build google/maps/routing/v2:google-cloud-maps-routing-v2-java
Bu komut,
googleapis/bazel-bin/google/maps/routing/v2/google-cloud-maps-routing-v2-java.tar.gz
adresindeki Java istemci kitaplığını oluşturur.
Size kolaylık sağlamak amacıyla, aşağıdaki tabloda her bir dil için derleme komutları listelenmektedir.
Dil | Bazelisk derleme komutu |
---|---|
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
|
Düğüm | bazelisk build google/maps/routing/v2:maps-routing-v2-nodejs
|
Yeni sürümler çıktığında güncellemeleri dahil edin
Yeni API sürümleri olduğunda istemci kitaplıklarını yeniden oluşturmanız gerekir. Önceki bölümlerde verilen talimatları uygulayarak depoları klonladığınızı varsayarsak yeni sürümler için aşağıdakileri yapın:
- Her iki depoyu da içeren mevcut çalışma dizinine geçin:
. ├── routes-auto-early-access └── googleapis
googleapis/google/maps
içindeki öncekirouting/v2
örneğini kaldırın:rm -rf googleapis/google/maps/routing/v2
- En son güncellemeleri almak için hem
routes-auto-early-access
hem degoogleapis
depolarına gidipgit pull
kod deposunu çalıştırın. routing/v2
öğesini, öncekine benzer şekildegoogleapis/google/maps/routing/v2
klasörüne kopyalayın:mkdir -p "googleapis/google/maps/routing/v2" && cp -R "routes-auto-early-access/google/maps/routing/v2" "googleapis/google/maps/routing"
routing/v2
deposunungoogleapis/google/maps/routing/v2
diziniyle başarıyla birleştirildiğini doğrulamak içingoogleapis/google/maps/routing/v2
sayfasına gidin. Klasör; proto dosyaları, birBUILD.bazel
dosyası ve Bazel derlemesi için gereken diğer dosyaları içermelidir.- 4. Adım: Bazelisk kullanarak istemci kitaplığı oluşturma bölümünde listelenen Bazelisk derleme komutlarını çalıştırın.
Java istemci kitaplığı için Javadocs oluşturma
İstemci kitaplığı, dile özgü sınıf ve yöntemleri kullanarak Routes API for Automotive'i çağırmanıza olanak tanır. Maalesef çıktı, istemci kitaplığının Javadoc belgelerini içermiyor. Bu bölümde, Java istemci kitaplığı için Javadoc'un nasıl oluşturulacağı açıklanmaktadır.
Ön koşullar
Javadoc derlemek için:
Uyumlu Gradle (8.0 veya üzeri) ve JDK (17 veya daha eski) sürümlerinin yüklü olduğundan emin olun. Terminalinizde
./gradlew --version
vejava -version
komutlarını çalıştırarak yüklü sürümlerinizi kontrol edebilirsiniz.Java istemci kitaplığı, çıkarmanız gereken şu
tar.gz
dosyasına oluşturulmuştur:googleapis/bazel-bin/google/maps/routing/v2/google-cloud-maps-routing-v2-java.tar.gz
.googleapis
dizininde olduğunuzu varsayarsak/PATH/TO/PARENT/DIRECTORY
çıkartılan kitaplık için seçtiğiniz yol ile değiştirerek aşağıdaki komutu çalıştırın: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
Üst dizine gidin:
cd /PATH/TO/PARENT/DIRECTORY
google-cloud-maps-routing-v2-java
dizininden aşağıdaki dizinlerdekibuild.gradle
dosyalarını açın: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
Her bir görevin aşağıdaki görevleri içerdiğinden emin olun. Bir hatadan dolayı, mevcut iki benzer görevi ve yapıyı şu kodla değiştirin:
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 }
Gradle 8.0 veya sonraki bir sürümü kullandığınızdan emin olun:
./gradlew --version
. Sürümünüz 7 ise şunları yapın:google-cloud-maps-routing-v2-java
dizinindengradlew
vegradlew.bat
dosyalarını silin. Ardından 8.0'a geçmek içingradle wrapper --gradle-version=8.0
komutunu çalıştırın.google-cloud-maps-routing-v2-java
dizininden Gradle'ı kullanarak Javadocs derleyin:./gradlew build
Oluşturulan Javadoc şu dizinlerde görünür:
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
Her bir dizinin
overview-tree.html
dosyasını bir web tarayıcısı kullanarak açın.