मैं एक जावा आवेदन किया है और इसके अंदर आदमख़ोर इंटरफेस करना चाहते हैं। विशेष रूप से राक्षस जो वस्तुओं जटिल सी के ++ बहुत सारे है अंदर था.मैं कई विकल्प इसजावा एप्लिकेशन में ओग्रे (सी ++) के साथ इंटरफेसिंग के लिए सबसे अच्छा तरीका क्या है?
1.) का प्रयोग करें कच्चा JNI पूरा करने के लिए मिल गया है एक 3 डी खेल इंजन पुस्तकालय है (JNI के रूप में कठिन काफी जटिल है)
2 ।) SWIG + JNI का उपयोग करें (कुछ हद तक सरल ... लेकिन अभी भी जेएनआई शामिल है)
3.) लुआ और नो जेएनआई का उपयोग करें (ओगुरे के लिए लुआ बाध्यकारी का उपयोग करें) ... मूल रूप से लुआ का उपयोग करने में मदद करता है क्योंकि सी ++ lib का इंटरफेस करना लुआ बहुत आसान है और जावा से लुआ को फोन करना बहुत मुश्किल नहीं होगा।
4.) का प्रयोग करें Ogre4j (एक जावा JNI का उपयोग कर राक्षस के लिए बाध्य है ... लेकिन इस परियोजना नहीं है तो नवीनतम आदमख़ोर संस्करण के साथ अद्यतन)
इनमें से कौन सा/मन भविष्य रखरखाव में सबसे अच्छा विकल्प रखते हुए की तरह लग रहा/ओग्रे के उन्नयन?
विकल्प नहीं 3 आज़माने के लिए सार्थक है? JNA https://github.com/twall/jna, एक पूर्व java.net परियोजना:
तुम क्यों जावा से राक्षस का उपयोग करना चाहते हैं? जावा गेम इंजन क्यों नहीं ढूंढते हैं, या सी ++ में अपना ऐप लिखते हैं? – jalf