2014-10-02 6 views
6

एक बड़ी प्रोटोबफ परिभाषा संकलित करने के बाद मुझे 6 एमबी जावा स्रोत कोड फ़ाइल मिल रही है।प्रोटोक: एकाधिक जावा स्रोत फ़ाइलों को कैसे उत्पन्न करें?

उस फ़ाइल के साथ काम करने के आकार के कारण एक बड़ा दर्द है क्योंकि जब मैं उस फ़ाइल को खोलता हूं तो ग्रहण और ग्रहण में पूरी तरह से स्टालों/क्रैश में विकसित होता है।

क्या प्रोटोक को एक बड़ी फ़ाइल के बजाय एकाधिक जावा स्रोत कोड फ़ाइलों को उत्पन्न करने का कोई तरीका है?

उत्तर

23

दरअसल, वहां है। यह दस्तावेज़ीकरण किया गया है नहीं, लेकिन आप इस तरह अपने .proto फाइल करने के लिए एक लाइन जोड़ सकते हैं:

option java_multiple_files = true; 

यह एक स्वतंत्र .java फ़ाइल में .proto फ़ाइल से प्रत्येक शीर्ष स्तर संदेश प्रकार डाल देंगे। ध्यान दें कि इन कक्षाओं को अपने नए स्थानों से आयात करने के लिए आपको अपने सभी कोड को अपडेट करना होगा। ध्यान दें कि protoc अभी भी "बाहरी" वर्ग उत्पन्न करेगा जो उसने पहले किया था, केवल भीतर के भीतर के भीतर के कक्षाओं के बिना। बाहरी वर्ग अभी भी फ़ाइल के डिस्क्रिप्टर, शीर्ष-स्तरीय एक्सटेंशन और अन्य गैर-वर्ग की चीज़ें पाने के लिए जाने का स्थान है।

यह सब कहा गया है, अगर आपके पास .proto फ़ाइल बड़ी है, तो मैं दृढ़ता से .proto फ़ाइल को एक-दूसरे को आयात करने वाली छोटी फ़ाइलों में विभाजित करने की अनुशंसा करता हूं।

संबंधित मुद्दे