इस प्रोजेक्ट के बारे में
Guava Google की एक सेट ऑफ़ कोर Java लाइब्रेरीज़ है। यह multimap और multiset जैसे नए collection प्रकार, immutable collections, graph library, concurrency, I/O, hashing, primitives, strings और अधिक के लिए utilities प्रदान करती है। README के अनुसार, यह Google के अधिकांश Java प्रोजेक्ट्स और कई अन्य कंपनियों द्वारा व्यापक रूप से उपयोग की जाती है।
Guava दो रूपों में आती है। JRE रूप के लिए JDK 1.8 या उच्चतर आवश्यक है। Android सहायता के लिए, repository के android directory में source के साथ एक Android रूप उपलब्ध है।
Build में Guava जोड़ना: Maven group ID com.google.guava है और artifact ID guava है। दो रूपों को Maven version field में 33.7.1-jre या 33.7.1-android के रूप में निर्दिष्ट किया गया है। README में Maven और Gradle dependency snippets दिए गए हैं, जिसमें Gradle में api versus implementation का उपयोग कब करना है, इसके बारे में मार्गदर्शन भी शामिल है।
Master branch से बनाए गए snapshots Maven के माध्यम से 999.0.0-HEAD-jre-SNAPSHOT के रूप में उपलब्ध हैं, या Android रूप के लिए 999.0.0-HEAD-android-SNAPSHOT। Snapshot API Javadoc और API diffs भी उपलब्ध हैं। Javadoc guava.dev/api पर पहुँचा जा सकता है, और किसी विशेष वर्ग को guava.dev के साथ उसका नाम जोड़कर खोला जा सकता है।
Learning resources में users' guide, Guava Explained, और अन्य सहायक links का संग्रह शामिल है। प्रोजेक्ट अपने GitHub project, issue tracker, StackOverflow tag, और guava-announce और guava-discuss Google groups से लिंक करता है।
README में महत्वपूर्ण चेतावनियाँ सूचीबद्ध हैं। class या method level पर @Beta annotation से चिह्नित APIs परिवर्तन के अधीन हैं और किसी भी समय संशोधित या हटाई जा सकती हैं; library authors को सलाह दी जाती है कि वे beta APIs का उपयोग तब तक न करें जब तक कि वे उन्हें repackage न करें, और एक Guava Beta Checker की सिफारिश की जाती है। @Beta के बिना APIs को indefinite future के लिए binary-compatible होने के रूप में घोषित किया गया है, और @Deprecated APIs भी तब तक रहेंगी जब तक कि वे @Beta न हों। Guava को runtime पर linkage के लिए com.google.guava:failureaccess:1.0.3 नामक एक dependency की आवश्यकता होती है, साथ ही कुछ annotation-only dependencies। सभी objects के serialized forms नोट किए बिना परिवर्तन के अधीन हैं, इसलिए उन्हें किसी भविष्य के संस्करण द्वारा पढ़े जाने की धारणा के साथ persist नहीं करना चाहिए। classes को malicious caller के खिलाफ सुरक्षा के लिए डिज़ाइन नहीं किया गया है और इनका उपयोग trusted और untrusted code के बीच communication के लिए नहीं करना चाहिए। mainline रूप के लिए, libraries को Linux और Windows पर OpenJDK के विभिन्न संस्करणों का उपयोग करके परीक्षण किया जाता है, और com.google.common.io में कुछ विशेष रूप से non-Linux environments में सही कार्य नहीं कर सकते हैं। Android रूप के लिए, unit tests API level 24 (Nougat) पर भी चलते हैं।
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.