JavaInfo

यह Java और Java जैसे टारगेट के बारे में जानकारी देने वाला प्रोवाइडर है.

सदस्य

bool JavaInfo._neverlink

क्या इस लाइब्रेरी का इस्तेमाल सिर्फ़ कंपाइल करने के लिए किया जाना चाहिए, न कि रनटाइम के दौरान.

annotation_processing

java_annotation_processing JavaInfo.annotation_processing

यह Java/Java जैसे टारगेट पर लागू किए गए एनोटेशन प्रोसेसर के बारे में जानकारी दिखाता है.

इस्तेमाल पर रोक लगा दी गई है: इसके बजाय, कृपया plugins का इस्तेमाल करें. यह एनोटेशन प्रोसेसर के बारे में जानकारी देता है, जिसे टारगेट इस्तेमाल करने वाले लोग लागू कर सकते हैं. इसमें None मिल सकता है.

api_generating_plugins

struct JavaInfo.api_generating_plugins

यह टारगेट, एपीआई जनरेट करने वाले जिन प्लगिन को तय या एक्सपोर्ट करता है उनके बारे में डेटा दिखाता है.

इन एनोटेशन प्रोसेसर को, Java टारगेट पर लागू किया जाता है. इसके बाद, इसके हेडर जार (जिनमें तरीके के सिग्नेचर शामिल होते हैं) बनाए जाते हैं. जब कोई एपीआई प्लगिन मौजूद नहीं होता है, तो हेडर जार, सोर्स से जनरेट होते हैं. इससे क्रिटिकल पाथ कम हो जाता है.

api_generating_plugins, plugins का सबसेट है.

compilation_info

java_compilation_info JavaInfo.compilation_info

यह Java/Java जैसे टारगेट के लिए, कंपाइलेशन की जानकारी दिखाता है. इसमें None मिल सकता है.

compile_jars

depset JavaInfo.compile_jars

यह फ़ंक्शन, कंपाइल करने के समय इस टारगेट के लिए ज़रूरी जार सीधे तौर पर दिखाता है. ये इंटरफ़ेस जार (ijar या hjar), रेगुलर जार या दोनों हो सकते हैं. यह इस बात पर निर्भर करता है कि नियम लागू करने वालों ने इंटरफ़ेस जार बनाने का विकल्प चुना है या नहीं.

full_compile_jars

depset JavaInfo.full_compile_jars

यह टारगेट के लिए ज़रूरी, रेगुलर और पूरी तरह से कंपाइल की गई JAR फ़ाइलें दिखाता है. इन्हें
  • JavaInfo.compile_jars से मिले इंटरफ़ेस जार के साथ-साथ उनसे जुड़े सामान्य जार
  • JavaInfo.compile_jars ने रेगुलर (फुल) जार लौटाए

ध्यान दें: JavaInfo.compile_jars, इंटरफ़ेस जार और सामान्य जार, दोनों तरह के जार दिखा सकता है.

इस तरीके का इस्तेमाल सिर्फ़ तब करें, जब इंटरफ़ेस जार आपके नियम सेट के साथ काम न करें.उदाहरण के लिए, कुछ Scala टारगेट. अगर सिर्फ़ Java टारगेट के साथ काम किया जा रहा है, तो JavaInfo.compile_jars के ज़रिए इंटरफ़ेस जार का इस्तेमाल करना बेहतर होता है

header_compilation_direct_deps

depset JavaInfo.header_compilation_direct_deps

यह फ़ंक्शन, हेडर कंपाइलेशन ऐक्शन की डायरेक्ट डिपेंडेंसी दिखाता है.

java_outputs

list JavaInfo.java_outputs

यह Java/Java जैसे टारगेट के आउटपुट के बारे में जानकारी दिखाता है.

module_flags_info

JavaModuleFlagsProvider JavaInfo.module_flags_info

यह Java मॉड्यूल के फ़्लैग कॉन्फ़िगरेशन की जानकारी देता है.

आउटपुट

java_output_jars JavaInfo.outputs

यह Java/Java जैसे टारगेट के आउटपुट के बारे में जानकारी दिखाता है. अब इस्तेमाल नहीं किया जाता: java_outputs का इस्तेमाल करें. इसमें None मिल सकता है.

प्लगिन

struct JavaInfo.plugins

यह उन सभी प्लगिन के बारे में डेटा दिखाता है जिन्हें टारगेट करने वाले को लागू करना चाहिए.

आम तौर पर, यह java_plugin या एक या उससे ज़्यादा प्लगिन एक्सपोर्ट करने वाला java_library होता है.

java_library, एनोटेशन प्रोसेसिंग करता है. इस फ़ील्ड के सभी प्लगिन, deps और plugins एट्रिब्यूट में दिखते हैं.

runtime_output_jars

sequence JavaInfo.runtime_output_jars

यह फ़ंक्शन, इस Java/Java जैसे टारगेट से बनाए गए रनटाइम जार की सूची दिखाता है.

source_jars

sequence JavaInfo.source_jars

यह फ़ंक्शन, टारगेट की सभी सोर्स फ़ाइलों (एनोटेशन से जनरेट हुई फ़ाइलें भी शामिल हैं) के साथ जार की सूची दिखाता है. इसमें ट्रांज़िटिव डिपेंडेंसी के सोर्स शामिल नहीं होते.

transitive_compile_time_jars

depset JavaInfo.transitive_compile_time_jars

यह फ़ंक्शन, टारगेट बनाने के लिए ज़रूरी JAR का ट्रांज़िटिव सेट दिखाता है.

ध्यान दें: बाइनरी टारगेट (जैसे, java_binary और java_test) के लिए, यह खाली होता है. ऐसा इसलिए, क्योंकि इन टारगेट को अन्य Java टारगेट की डिपेंडेंसी के तौर पर इस्तेमाल नहीं किया जाता.

transitive_native_libraries

depset JavaInfo.transitive_native_libraries

यह फ़ंक्शन, टारगेट के लिए ज़रूरी CC नेटिव लाइब्रेरी का ट्रांज़िटिव सेट दिखाता है.

transitive_runtime_jars

depset JavaInfo.transitive_runtime_jars

यह फ़ंक्शन, टारगेट के रनटाइम क्लासपाथ पर ज़रूरी जार का ट्रांज़िटिव सेट दिखाता है.

ध्यान दें: java_binary और java_test जैसे बाइनरी टारगेट के लिए, यह खाली होता है. ऐसा इसलिए, क्योंकि इन टारगेट को अन्य Java टारगेट की डिपेंडेंसी के तौर पर इस्तेमाल नहीं किया जाता.

transitive_source_jars

depset JavaInfo.transitive_source_jars

यह फ़ंक्शन, मौजूदा टारगेट और उसकी सभी ट्रांज़िटिव डिपेंडेंसी की सोर्स फ़ाइलों वाले जार दिखाता है.