2012-12-04 12 views
5

में कनवर्ट करें मेरे पास कुछ स्कैला कोड है जो मैंने एसबीटी-प्लगइन के साथ इंटेलिजे का उपयोग करके लिखा है और मुझे सी ++ के लिए डीएलएल के रूप में कोड प्रदान करना चाहता हूं।स्केल-फाइल्स को एक डीएल

मैंने पहले से ही 'ikvmc' का उपयोग करने की कोशिश की है: मैंने अपने सभी वर्गों को एक पैकेज में 'पैकेज' के माध्यम से पैक किया है। बाद में मैंने मैन्युअल रूप से एक जार स्थापित किया जिसमें सभी निर्भरताएं शामिल हैं (स्कैला-लाइब्रेरी, स्कामा, जैमेटियो, जामा)। दुर्भाग्यवश मुझे बहुत सारी चेतावनियां मिलती हैं: 'IKVMC0119', "उत्सर्जित जावा। Lang.VerificationError 'और' IKVMC0104 '(समान रूप से नीचे दिए गए उदाहरण के लिए)!

फिर मैंने एक साधारण स्कैला-श्रेणी (कोई निर्भरता) को बदलने की कोशिश की उपर्युक्त विधि का उपयोग कर: एसबीटी के साथ पैकेज, स्केला-library.jar जोड़ने और इसे बदलने की कोशिश के माध्यम से ikvmc -target:। पुस्तकालय simpleClass.jar मैं एक ही चेतावनी/त्रुटियों प्राप्त के रूप में आप नीचे देख ... enter image description here

मैं बहुत खुश हो सकता है अगर किसी ने मुझे एक कदम-दर-कदम स्पष्टीकरण कैसे एक DLL के रूप में मेरे स्काला कोड प्रदान करने के लिए दे सकते हैं।

धन्यवाद अग्रिम में एक बहुत!

उत्तर

2

आप किस आईकेवीएम संस्करण का उपयोग करते हैं?

यदि आप पहले ही 7.1 का उपयोग करते हैं तो यह IKVM में एक बग की तरह लगता है। प्रजनन के लिए नमूना के साथ मेलिंग सूची या बग सूची से संपर्क करें।

यदि आप पुराने संस्करण का उपयोग करते हैं तो आपको अपडेट करना चाहिए।

+0

मैं आईकेवीएम के नवीनतम संस्करण का उपयोग करता हूं जो '7.1.4532.2' है। मैं स्कैला 2.9.2 और एसबीटी 1.0 का उपयोग करता हूं। अब मैंने अपना हैलो.जर (केवल निर्भरता स्केल-लाइब्रेरी.जर) को आईकेवीएमसी '7.0.4335.0' के साथ परिवर्तित किया है और मुझे संस्करण 7.1 के साथ पूरी तरह से अलग चेतावनियां मिलती हैं .: IKVMC0100 'क्लास नहीं मिला', आईकेवीएमसी0105 'गायब वर्ग', IKVMC0100 'क्लास नहीं मिला', IKVMC0111 'java.lang.NoClassDefFoundError'। – user1537137

+0

कृपया इसे IKVM की मेलिंग सूची पर पोस्ट करें या एक बग टिकट खोलें। – Horcrux7

1

IKVM ('7.0.4335.0') के पिछले संस्करण के साथ हैलो.जर को परिवर्तित करने के बाद मैं सी # में डीएल का उपयोग कर सकता हूं (भले ही मैंने ikvmc से चेतावनी प्राप्त की हो)। यह मेरे स्कैला कोड के लिए भी काम करता है: एसबीटी-पैक किए गए जार को अपनी निर्भरताओं के साथ परिवर्तित करने के लिए एक डीएल वितरित किया जाता है। बाद में मैं सी # में कक्षाओं का उपयोग कर सकता था!

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