बाइटकोड ट्रांसपिलर
ग्रासहॉपर एक सीएलआर बाईटेकोड ले सकता है और जेवीएम के लिए इसे ट्रांसपाइल कर सकता है। मुख्य रूप से वेब ऐप्स के लिए इरादा, यह उदाहरण के लिए विंडोज फॉर्म कक्षाओं के जेवीएम कार्यान्वयन प्रदान नहीं करता है। कुछ हद तक लगता है, यद्यपि। वेब ASP.NET 2.0, विजुअल स्टूडियो 2008 और इतने पर के बारे में बात करता है। सबसे पहले @alex द्वारा उल्लेख किया गया है
XMLVM CLR या JVM बायटेकोड को इनपुट के रूप में ले सकता है और आउटपुट के रूप में उत्पादन कर सकता है। इसके अतिरिक्त यह जावास्क्रिप्ट या ऑब्जेक्टिव-सी आउटपुट कर सकता है। अभी तक कोई रिलीज नहीं, केवल तोड़फोड़। "प्रायोगिक विकास संस्करण जिसे उत्पादन परिवेश में उपयोग नहीं किया जाना है।"
IKVM ओपी चाहता है की तुलना में दूसरी दिशा में जाता है। यह सीएलआर पर चलने वाला एक जेवीएम कार्यान्वयन प्रदान करता है, एक जेवीएम से सीएलआर बाईटेकोड ट्रांसपिलर और जावा के लिए एक सीएलआर लाइब्रेरी विधि स्टब जनरेटर। http://www.ikvm.net/use.html @Jon Skeet द्वारा उल्लेख किया गया
आरपीसी
क्यों नहीं CLR और JVM साथ-साथ चल रहे हैं और संचार को यथासंभव घर्षणहीन बना रहे हैं? यह वह नहीं है जो ओपी चाहता है, लेकिन कुछ अन्य उत्तर पहले से ही अलग-अलग तरीकों से विषय से काफी दूर हैं, इसलिए इसे कवर करते हैं।
RabbitMQ , एक नि: शुल्क विकल्प है, यह एक आरपीसी सर्वर है जो सी #, जावा और अधिक के लिए एपीआई पुस्तकालयों के साथ एर्लांग में लिखा गया है।
jnBridge , कुछ संभावित उपयोगकर्ताओं के लिए लाइसेंस बहुत महंगा हो सकता है।
जीआरपीसी , और इसी तरह के आधुनिक आरपीसी लाइब्रेरी इन भाषाओं में क्लाइंट लाइब्रेरी के लिए वाइड लैंग्वेज सपोर्ट, कोड जेनरेशन, डेटा के लिए लैंग्वेज इंडिपेंडेंट वायर फॉर्मेट, कैस्केडिंग कॉल-कैंसेलेशन जैसी एडवांस फीचर्स आदि प्रदान करते हैं।
प्रोग्रामिंग की भाषाएँ
एक बार लिखें, हर जगह दौड़ें;)
हैक्स , सी # / सीएलआर, जावा / जेवीएम, जावास्क्रिप्ट, फ्लैश, पायथन के लिए संकलित करता है, ... लक्ष्य भाषाओं में से प्रत्येक के लिए इंटरोप तंत्र प्रदान करता है। कुछ हद तक एक ActionScript3 उत्तराधिकारी के रूप में सोचा जा सकता है। वास्तव में इस पर निर्भर करता है, कम से कम एक कंपनी के साथ बहुत ठोस सामान लगता है। स्टैब की तुलना में बहुत अधिक भरोसेमंद, अगले उल्लेख किया गया है।
Stab कुछ C # फीचर्स और जावा इंटरऑपरेबिलिटी लाता है। बहुत उपयोगी नहीं है, आपको कुछ सी # सुविधाएं मिलती हैं, लेकिन आप जो जावा कोड के साथ बातचीत करते हैं, उनका उपयोग नहीं करते हैं। https://softwareengineering.stackexchange.com/a/132080/45826 भाषा अपेक्षाकृत अस्पष्ट है, संभवतः छोड़ दिया गया है, बेहतर बनने के लिए थोड़ा वादा के साथ। सबसे पहले @Vns द्वारा यहाँ उल्लेख किया गया है।
जेवीएम प्लेटफॉर्म के लिए ताजा हवा का झोंका;)
स्काला , कोटलिन , अन्य, जेवीएम के शीर्ष पर चलने वाली काफी अच्छी भाषाएं हैं जो ऐसी विशेषताएं लाती हैं जो सी # प्रोग्रामर को जावा में याद आ सकती हैं। विशेष रूप से कोटलिन जेवीएम दुनिया में सी # के लिए एक उचित विकल्प की तरह लगता है। एक प्रोग्रामर के लिए थोड़े समय में आराम पाने के लिए स्काला थोड़ी बहुत बड़ी भाषा हो सकती है।
मोनो
यह निश्चित रूप से एक विकल्प भी है। JVM को ट्रांसपाइल क्यों करें अगर मोनो इसे जैसा चाहे वैसे चला सकता है। सबसे पहले @ferhrosa द्वारा उल्लेख किया गया
न्यूयार्क - 12 नवंबर, 2014 - बुधवार को, माइक्रोसॉफ्ट कॉर्प ने फुल सर्वर-साइड .NET स्टैक को ओपन करके और लिनक्स और मैक ओएस प्लेटफार्मों पर चलाने के लिए .NET का विस्तार करके क्रॉस-प्लेटफॉर्म डेवलपर अनुभवों के लिए अपनी प्रतिबद्धता को मजबूत किया।
इस प्रेस विज्ञप्ति के अनुसार जिसमें से उद्धरण आता है, विज़ुअल स्टूडियो 2015 लिनक्स / मोनो को एक समर्थित प्लेटफॉर्म के रूप में जोड़ देगा।
यह एक ब्लॉग है जो मोनो परियोजना के लोगों द्वारा इसके बारे में लिखा गया है, दूसरी तरफ से: .NET स्रोत कोड एकीकरण (नवंबर 2014)।
.NET कोर
Microsoft द्वारा शासित (कुछ) .Net का एक विंडोज / लिनक्स मल्टीप्लाय वर्जन। 'nuff ने कहा https://github.com/dotnet/core ।
निष्कर्ष
अब इन उपकरणों / रूपरेखाओं को आजमाकर देखना आवश्यक होगा कि इनमें कितना घर्षण है। ओपी जेवीएम के लिए सी # में लिखना चाहता है, जो वास्तव में ग्रासहॉपर का उपयोग करके काफी अच्छा काम कर सकता है।
C # और Java वर्ल्ड लाइब्रेरी को एक ही कोडबेस में मिलाने के लक्ष्य के साथ ऐसा करने से काम नहीं हो सकता है।
सूत्रों का कहना है
http://blog.pluralsight.com/new-course-making-java-and-c-work-together-jvm-and-net-clr-interop