मैं एक प्रोजेक्ट पर काम कर रहा हूं जहां हम जावा सेवा और अन्य विभिन्न भाषाओं में लिखे गए क्लाइंट के बीच बहुत से दूरस्थ ऑब्जेक्ट ट्रांसफर कर रहे हैं। हमारी वर्तमान बाधाओं को देखते हुए मैंने यह देखने का फैसला किया है कि मौजूदा जावा क्लास के आधार पर कोड उत्पन्न करने के लिए क्या होगा। असल में मुझे .class
फ़ाइल (या उनमें से एक संग्रह) लेने के लिए बाइटकोड को सभी डेटा सदस्यों और शायद गेटर्स/सेटर निर्धारित करने के लिए पार्स करने की आवश्यकता है और फिर कुछ लिखें जो एक ही संरचना के साथ कक्षा बनाने के लिए एक अलग भाषा में कोड आउटपुट कर सकता है ।प्रोग्रामेटिक रूप से निरीक्षण करें। क्लास फाइलें
मैं जेएडी जैसे मानक डीकंपलर की तलाश नहीं कर रहा हूं। मुझे .class
फ़ाइल लेने और अपने डेटा सदस्यों और विधियों का एक ऑब्जेक्ट मॉडल बनाने में सक्षम होना चाहिए। क्या यह वास्तव में संभव है?
+1। बहुत अच्छा एपीआई। – skaffman
वास्तव में, यदि आप एक चाहते हैं तो एएसएम एक ऑब्जेक्ट मॉडल प्रदान करता है। उनके पेड़ एपीआई देखें। –
यहां सूचीबद्ध सभी विकल्पों का मूल्यांकन करने के बाद, एएसएम निश्चित रूप से क्लास फाइलों का निरीक्षण करने के लिए सबसे अच्छा IMHO है। मैं मानता हूं कि विज़िटर पैटर्न बीसीईएल मॉडल की तुलना में अधिक क्लीनर है। पारितोषिक के लिए धन्यवाद। –