Starlark में Java कंपाइलेशन की सहायता के लिए उपयोगिता.
सदस्य
- BootClassPathInfo
- compile
- JavaRuntimeInfo
- JavaToolchainInfo
- मर्ज करें
- pack_sources
- run_ijar
- stamp_jar
BootClassPathInfo
Provider java_common.BootClassPathInfo
कंपाइल करना
struct java_common.compile(ctx, *, source_jars=[], source_files=[], output, output_source_jar=None, javac_opts=[], deps=[], runtime_deps=[], exports=[], plugins=[], exported_plugins=[], native_libraries=[], annotation_processor_additional_inputs=[], annotation_processor_additional_outputs=[], strict_deps='ERROR', java_toolchain, bootclasspath=None, sourcepath=[], resources=[], resource_jars=[], classpath_resources=[], neverlink=False, enable_annotation_processing=True, enable_compile_jar_action=True, add_exports=[], add_opens=[])
पैरामीटर
पैरामीटर | ब्यौरा |
---|---|
ctx
|
ctx;
ज़रूरी है नियम का संदर्भ. |
source_jars
|
फ़ाइल का क्रम;
डिफ़ॉल्ट तौर पर [] होता है उन jar की सूची जिन्हें कंपाइल करना है. source_jars या source_files में से कम से कम एक की जानकारी देना ज़रूरी है. |
source_files
|
फ़ाइल का क्रम;
डिफ़ॉल्ट रूप से [] होता है उन Java सोर्स फ़ाइलों की सूची जिन्हें कंपाइल करना है. source_jars या source_files में से कम से कम एक की जानकारी देना ज़रूरी है. |
output
|
फ़ाइल;
ज़रूरी है |
output_source_jar
|
फ़ाइल या None ;
डिफ़ॉल्ट तौर पर None आउटपुट सोर्स jar. अगर यह सेट नहीं किया गया है, तो डिफ़ॉल्ट रूप से `{output_jar}-src.jar` पर सेट होता है. |
javac_opts
|
स्ट्रिंग का क्रम;
डिफ़ॉल्ट [] है पसंदीदा javac विकल्पों की सूची. |
deps
|
struct का sequence;
डिफ़ॉल्ट तौर पर, यह [] होता है डिपेंडेंसी की सूची. |
runtime_deps
|
structs का sequence;
डिफ़ॉल्ट [] है यह रनटाइम डिपेंडेंसी की सूची है. |
exports
|
struct का sequence;
डिफ़ॉल्ट तौर पर [] होता है एक्सपोर्ट की सूची. |
plugins
|
struct का sequence या struct का sequence;
डिफ़ॉल्ट [] है प्लग इन की सूची. |
exported_plugins
|
struct का sequence या struct का sequence;
डिफ़ॉल्ट [] है एक्सपोर्ट किए गए प्लग इन की सूची. |
native_libraries
|
CcInfos का sequence;
डिफ़ॉल्ट रूप से [] होता है CC की नेटिव लाइब्रेरी की डिपेंडेंसी, जो इस लाइब्रेरी के लिए ज़रूरी हैं. |
annotation_processor_additional_inputs
|
फ़ाइल का क्रम;
डिफ़ॉल्ट रूप से [] होता है एनोटेशन प्रोसेसिंग के लिए, Java सोर्स के अलावा Java कंपाइलेशन ऐक्शन में इनपुट की यह सूची शामिल होगी. |
annotation_processor_additional_outputs
|
फ़ाइल का क्रम;
डिफ़ॉल्ट रूप से [] होता है एनोटेशन प्रोसेसिंग से क्लास jar के अलावा, Java कंपाइलेशन ऐक्शन से मिलने वाले आउटपुट की सूची. |
strict_deps
|
string;
डिफ़ॉल्ट रूप से 'ERROR' होता है यह एक स्ट्रिंग है, जिसमें सख्त डिपेंडेंसी को मैनेज करने का तरीका बताया गया है. संभावित वैल्यू: 'OFF', 'ERROR', 'WARN', और 'DEFAULT'. ज़्यादा जानकारी के लिए, --strict_java_deps देखें |
java_toolchain
|
जानकारी;
ज़रूरी है इस कंपाइलेशन के लिए इस्तेमाल किया जाने वाला JavaToolchainInfo. यह ज़रूरी है. |
bootclasspath
|
डिफ़ॉल्ट तौर पर None इस कंपाइलेशन के लिए इस्तेमाल की जाने वाली BootClassPathInfo. इस पैरामीटर के मौजूद होने पर, दिए गए java_toolchain से जुड़े bootclasspath को बदल दिया जाता है. |
sourcepath
|
फ़ाइल का क्रम;
डिफ़ॉल्ट तौर पर [] है |
resources
|
फ़ाइल का क्रम;
डिफ़ॉल्ट तौर पर [] है |
resource_jars
|
फ़ाइल का क्रम;
डिफ़ॉल्ट तौर पर [] है |
classpath_resources
|
फ़ाइल का क्रम;
डिफ़ॉल्ट तौर पर [] है |
neverlink
|
bool;
डिफ़ॉल्ट False है |
enable_annotation_processing
|
bool;
डिफ़ॉल्ट रूप से True होता है इस कंपाइलेशन में एनोटेशन प्रोसेसिंग की सुविधा बंद कर देता है. इस वजह से, प्लग इन या डिपेंडेंसी के exported_plugins में दिए गए किसी भी एनोटेशन प्रोसेसर को अनदेखा कर दिया जाता है. |
enable_compile_jar_action
|
bool;
डिफ़ॉल्ट रूप से True पर सेट होता है हेडर कंपाइलेशन या ijar बनाने की सुविधा चालू करता है. अगर इसे 'गलत है' पर सेट किया जाता है, तो यह किसी भी डिपेंडेंट के कंपाइलेशन क्लासपाथ में, पूरी क्लास के jar का इस्तेमाल करने के लिए मजबूर करता है. ऐसा करने का मकसद, लाइब्रेरी टारगेट के अलावा अन्य टारगेट का इस्तेमाल करना है. जैसे, ऐसे बाइनरी जिनमें डिपेंडेंट नहीं होते. |
add_exports
|
स्ट्रिंग का क्रम;
डिफ़ॉल्ट रूप से [] होता है इस लाइब्रेरी को दिए गए |
add_opens
|
स्ट्रिंग का क्रम;
डिफ़ॉल्ट रूप से [] होता है इस लाइब्रेरी को दिए गए |
JavaRuntimeInfo
Provider java_common.JavaRuntimeInfo
JavaToolchainInfo
Provider java_common.JavaToolchainInfo
मर्ज करें
struct java_common.merge(providers)
पैरामीटर
पैरामीटर | ब्यौरा |
---|---|
providers
|
struct का sequence;
ज़रूरी है मर्ज करने के लिए, सेवा देने वाली कंपनियों की सूची. |
pack_sources
File java_common.pack_sources(actions, *, output_source_jar=None, sources=[], source_jars=[], java_toolchain)
JavaInfo#source_jar
पैरामीटर
पैरामीटर | ब्यौरा |
---|---|
actions
|
actions;
ज़रूरी ctx.actions |
output_source_jar
|
फ़ाइल या None ;
डिफ़ॉल्ट तौर पर None आउटपुट सोर्स jar. |
sources
|
फ़ाइल का क्रम;
डिफ़ॉल्ट तौर पर [] होता है सोर्स jar में पैक की जाने वाली Java सोर्स फ़ाइलों की सूची. |
source_jars
|
फ़ाइल का क्रम;
डिफ़ॉल्ट रूप से [] होता है सोर्स जार में पैक किए जाने वाले सोर्स जार की सूची. |
java_toolchain
|
Info;
ज़रूरी है ijar टूल ढूंढने के लिए इस्तेमाल किया जाने वाला JavaToolchainInfo. |
run_ijar
File java_common.run_ijar(actions, *, jar, target_label=None, java_toolchain)
JavaInfo#compile_jar
में पास किया जाता है.
पैरामीटर
पैरामीटर | ब्यौरा |
---|---|
actions
|
actions;
ज़रूरी ctx.actions |
jar
|
फ़ाइल;
ज़रूरी है वह jar जिस पर ijar को चलाना है. |
target_label
|
लेबल या None ;
डिफ़ॉल्ट तौर पर None जार पर स्टैंप करने के लिए टारगेट लेबल. add_dep की सहायता टीम से संपर्क करने के लिए इस्तेमाल किया जाता है. आम तौर पर, मौजूदा नियम के लेबल के साथ कंटेनर को स्टैंप करने के लिए, ctx.label पास किया जाता है.
|
java_toolchain
|
Info;
ज़रूरी है ijar टूल ढूंढने के लिए इस्तेमाल किया जाने वाला JavaToolchainInfo. |
stamp_jar
File java_common.stamp_jar(actions, *, jar, target_label, java_toolchain)
add_dep
सहायता के लिए, टारगेट लेबल वाले जार पर स्टैंप लगाता है. रिटर्न वैल्यू को आम तौर पर JavaInfo#compile_jar
में पास किया जाता है. जब भी हो सके, run_ijar
का इस्तेमाल करें.
पैरामीटर
पैरामीटर | ब्यौरा |
---|---|
actions
|
actions;
ज़रूरी ctx.actions |
jar
|
फ़ाइल;
ज़रूरी है stamp_jar को चलाने के लिए जार. |
target_label
|
लेबल;
ज़रूरी है यह एक टारगेट लेबल है, जिससे डिवाइस पर मौजूद JAR फ़ाइल को स्टैंप किया जाता है. add_dep की सहायता टीम से संपर्क करने के लिए इस्तेमाल किया जाता है. आम तौर पर, मौजूदा नियम के लेबल के साथ कंटेनर को स्टैंप करने के लिए, ctx.label पास किया जाता है.
|
java_toolchain
|
जानकारी;
ज़रूरी है stamp_jar टूल ढूंढने के लिए इस्तेमाल किया जाने वाला JavaToolchainInfo. |