क्लाइंट लाइब्रेरी, किसी एपीआई के लिए अलग-अलग भाषा के इंटरफ़ेस होते हैं. इस दस्तावेज़ में बताया गया है कि अलग-अलग प्रोग्रामिंग भाषाओं में, Automotive के रूट एपीआई के लिए क्लाइंट लाइब्रेरी जनरेट करने के लिए, Bazel के लॉन्चर Bazelisk का इस्तेमाल कैसे किया जाए. Bazelisk यह पक्का करता है कि बिल्ड कमांड लागू करने के लिए, Bazel के सही वर्शन का इस्तेमाल किया जाए.
लाइब्रेरी जनरेट करने के लिए ज़रूरी कोड, एक निजी गेरिट रिपॉज़िटरी (डेटा स्टोर करने की जगह) में होस्ट किया जाता है. क्लाइंट लाइब्रेरी के काम करने के तरीके के बारे में जानने के लिए, क्लाइंट लाइब्रेरी की जानकारी देखें.
ज़रूरी शर्तें
ज़रूरी सॉफ़्टवेयर
इन्हें इंस्टॉल करें:
अनुमतियों से जुड़ी ज़रूरी शर्तें
- डेटा स्टोर करने की जगह का ऐक्सेस, किसी खास <partner>@google.com ग्रुप के सदस्यों को दिया जाता है. इस ग्रुप को आपकी कंपनी का कोई प्रतिनिधि मैनेज करता है. इस ग्रुप में शामिल होने के लिए, अपनी कंपनी के पीओसी या Google के बिज़नेस पार्टनर से संपर्क करें.
पहला चरण: Gerrit को ऐक्सेस करना
Gerrit को ऐक्सेस करने के लिए:- पक्का करें कि आपने ज़रूरी शर्तें सेक्शन में, डेटा स्टोर करने की अनुमति से जुड़ी ज़रूरी शर्तों को पूरा कर लिया है.
- Google खाता बनाएं में दिए गए निर्देश का पालन करके,
कॉर्पोरेट ईमेल पते का इस्तेमाल करके Google खाता बनाएं.
- Google खाता बनाते समय, पक्का करें कि आपने 'Google खाता' के साइन-इन पेज पर जाने से पहले gmail.com या किसी दूसरे Google डोमेन की सेवाओं के खाते में लॉग इन नहीं किया हो. प्रोफ़ाइल को साफ़ करने के लिए, अपने ब्राउज़र को बंद करके रीस्टार्ट करें. इसके बाद, गुप्त (निजी) ब्राउज़िंग विंडो खोलें.
- दूसरों के लिए ऐक्सेस का अनुरोध करते समय, हर उस व्यक्ति के लिए खाता बनाएं जिसे ऐक्सेस की ज़रूरत है. इसके बाद, अपने Google बिज़नेस पार्टनर को नए Google खातों की सूची भेजें. आपका कारोबार पार्टनर, सही ऐक्सेस ग्रुप में ईमेल पते जोड़ देगा.
- आपने अभी-अभी जो Google खाता बनाया है उसका इस्तेमाल करके, https://partner-code.googlesource.com पर जाएं. जब आप गेरिट होस्ट को ऐक्सेस करेंगे, तो एक उपयोगकर्ता बन जाएगा और वह अपने-आप आपके लिए लॉग इन हो जाएगा.
- https://partner-code.googlesource.com पर जाकर, पासवर्ड जनरेट करें पर क्लिक करें. अपना Google खाता चुनने, googlesource.com का ऐक्सेस देने, और स्क्रीन पर दिए गए अन्य निर्देशों का पालन करने के लिए, स्क्रीन पर दिए गए निर्देशों का पालन करें.
- स्क्रिप्ट मिलने पर, उसे कॉपी करके अपने टर्मिनल में चिपकाएं.
दूसरा चरण: डेटा स्टोर करने की जगहों का क्लोन बनाएं
इस चरण में, googleapis
और routes-auto-early-access
डेटा स्टोर करने की जगहों का क्लोन बनाएं.
routes-auto-early-access
रिपॉज़िटरी का क्लोन बनाएं:git clone https://partner-code.googlesource.com/routes-auto-early-access
- Google
googleapis
के डेटा स्टोर करने की सार्वजनिक जगह का क्लोन बनाएं:git clone https://github.com/googleapis/googleapis.git
चरण 3: डेटा स्टोर करने की जगहें मर्ज करना
इस चरण में, routes-auto-early-access/google/maps/routing/v2
सबडायरेक्ट्री को
googleapis/google/maps/routing/v2
में ले जाया जाएगा.
- डेटा स्टोर करने की जगहों को क्लोन करने के बाद, यह पक्का करें कि आपकी मौजूदा डायरेक्ट्री (
pwd
) मेंroutes-auto-early-access
औरgoogleapis
, दोनों सबडायरेक्ट्री शामिल हों.. ├── routes-auto-early-access └── googleapis
- टारगेट वाली जगह पर
routing/v2
डायरेक्ट्री बनाएं औरrouting/v2
कोgoogleapis/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"
routing/v2
डायरेक्ट्री को googleapis/google/maps/routing/v2
डायरेक्ट्री में मर्ज किए जाने की पुष्टि करने के लिए, googleapis/google/maps/routing/v2
पर जाएं.
फ़ोल्डर में प्रोटो फ़ाइलें और एक BUILD.bazel
फ़ाइल होनी चाहिए. साथ ही, बिल्ड के लिए ज़रूरी अन्य फ़ाइलें
भी होनी चाहिए.
चौथा चरण: Bazelisk का इस्तेमाल करके क्लाइंट लाइब्रेरी बनाना
किसी खास भाषा के लिए क्लाइंट लाइब्रेरी बनाने के लिए, BUILD.bazel
फ़ाइल (googleapis/google/maps/routing/v2/BUILD.bazel
पर) में उस भाषा के लिए बिल्ड टारगेट की पहचान करें और वह टारगेट बनाएं. टारगेट name
को <LANGUAGE>_gapic_assembly_pkg
ऑब्जेक्ट के अंदर देखा जा सकता है.
ज़्यादा जानकारी के लिए, Bazel दस्तावेज़ में एक टारगेट बनाना देखें.
उदाहरण के लिए, Java क्लाइंट लाइब्रेरी बनाने के लिए, ये काम करें:
googleapis
डायरेक्ट्री में बदलें:cd googleapis
- यह निर्देश चलाएं:
bazelisk build google/maps/routing/v2:google-cloud-maps-routing-v2-java
यह निर्देश,
googleapis/bazel-bin/google/maps/routing/v2/google-cloud-maps-routing-v2-java.tar.gz
पर मौजूद Java क्लाइंट लाइब्रेरी जनरेट करता है.
आपकी सुविधा के लिए, नीचे दी गई टेबल में हर उपलब्ध भाषा के लिए बिल्ड निर्देश दिए गए हैं.
भाषा | बेज़ेलिस्क बिल्ड कमांड |
---|---|
Java | bazelisk build google/maps/routing/v2:google-cloud-maps-routing-v2-java
|
शुरू करें | 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
|
नोड | bazelisk build google/maps/routing/v2:maps-routing-v2-nodejs
|
नई रिलीज़ होने पर अपडेट शामिल करें
एपीआई के लिए नई रिलीज़ होने पर, आपको क्लाइंट लाइब्रेरी फिर से बनानी होंगी. यह मानते हुए कि आपने पिछले सेक्शन में दिए गए निर्देश का पालन करके, डेटा स्टोर करने की जगहों का क्लोन पहले ही बना लिया है, नई रिलीज़ के लिए ये काम करें:
- मौजूदा वर्किंग डायरेक्ट्री में बदलें, जिसमें दोनों डेटा स्टोर करने की जगह मौजूद है:
. ├── routes-auto-early-access └── googleapis
googleapis/google/maps
मेंrouting/v2
के पिछले इंस्टेंस को हटाएं:rm -rf googleapis/google/maps/routing/v2
- नए अपडेट पाने के लिए,
routes-auto-early-access
औरgoogleapis
, दोनों डेटा स्टोर करने की जगहों पर जाएं औरgit pull
चलाएं. routing/v2
को पहले की तरह,googleapis/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"
routing/v2
रिपॉज़िटरी कोgoogleapis/google/maps/routing/v2
डायरेक्ट्री में मर्ज करने की पुष्टि करने के लिए,googleapis/google/maps/routing/v2
पर जाएं. इस फ़ोल्डर में प्रोटो फ़ाइलें, एकBUILD.bazel
फ़ाइल, और Bazel बिल्ड के लिए ज़रूरी अन्य फ़ाइलें होनी चाहिए.- पहले सेक्शन में दिए गए Bazelisk बिल्ड निर्देश चलाएं चौथा चरण: Bazelisk में इस्तेमाल करके क्लाइंट लाइब्रेरी बनाएं.
Java क्लाइंट लाइब्रेरी के लिए, Javadocs जनरेट करें
क्लाइंट लाइब्रेरी की मदद से सिर्फ़ भाषा से जुड़ी क्लास और तरीकों का इस्तेमाल करके, Automotive के लिए Routes API को कॉल किया जा सकता है. माफ़ करें, आउटपुट में क्लाइंट लाइब्रेरी के लिए Javadoc दस्तावेज़ शामिल नहीं है. इस सेक्शन में बताया गया है कि Java क्लाइंट लाइब्रेरी के लिए, Javadoc कैसे जनरेट किया जाता है.
ज़रूरी शर्तें
Javadoc बनाने के लिए:
पक्का करें कि आपके डिवाइस में Gradle (8.0 या इसके बाद का वर्शन) और JDK (17 या इससे पहले के वर्शन) के वर्शन इंस्टॉल किए गए हों. इंस्टॉल किए गए वर्शन देखने के लिए, टर्मिनल में
./gradlew --version
औरjava -version
चलाएं.Java क्लाइंट लाइब्रेरी, इस
tar.gz
फ़ाइल के हिसाब से बनाई गई है, जिसे एक्सट्रैक्ट करना होगा:googleapis/bazel-bin/google/maps/routing/v2/google-cloud-maps-routing-v2-java.tar.gz
.यह मानते हुए कि आप
googleapis
डायरेक्ट्री में हैं, नीचे दिए गए कमांड को चलाएं. साथ ही,/PATH/TO/PARENT/DIRECTORY
को एक्सट्रैक्ट की गई लाइब्रेरी के लिए चुने गए पाथ से बदलें: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
पैरंट डायरेक्ट्री पर जाएं:
cd /PATH/TO/PARENT/DIRECTORY
google-cloud-maps-routing-v2-java
डायरेक्ट्री से, इनमें से हर डायरेक्ट्री में मौजूदbuild.gradle
फ़ाइलें खोलें: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
पक्का करें कि हर टास्क में ये टास्क शामिल हों. किसी गड़बड़ी की वजह से, मौजूदा दो मिलते-जुलते टास्क और आर्टफ़ैक्ट को इस कोड से बदलें:
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 या इसके बाद के वर्शन का इस्तेमाल किया जा रहा है:
./gradlew --version
. अगर आपका वर्शन 7 है, तोgoogle-cloud-maps-routing-v2-java
डायरेक्ट्री सेgradlew
औरgradlew.bat
फ़ाइलें मिटाएं. इसके बाद, 8.0 पर स्विच करने के लिएgradle wrapper --gradle-version=8.0
चलाएं.google-cloud-maps-routing-v2-java
डायरेक्ट्री से, Javadocs बनाने के लिए Gradle का इस्तेमाल करें:./gradlew build
जनरेट किया गया Javadoc इन डायरेक्ट्री में दिखता है:
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
किसी वेब ब्राउज़र का इस्तेमाल करके, हर डायरेक्ट्री की
overview-tree.html
फ़ाइल खोलें.