2013-02-13 6 views
5

मैं क्लोजर से HDF5 java library का उपयोग करना चाहता हूं। दुर्भाग्य से, जावा निर्भरताओं को शामिल करने का सामान्य तरीका (यानी मैवेन रिपॉजिटरीज़ के लिए लीनिंगेन के समर्थन के माध्यम से) उपलब्ध नहीं है। ऐसा इसलिए है क्योंकि एचडीएफ 5-जावा लाइब्रेरी संकलित सी ++ और फोरट्रान कोड का जेएनआई-लपेटा हुआ सेट है।प्लेटफ़ॉर्म-विशिष्ट जावा निर्भरताएं शामिल करें (आग पर मेरे बालों को सेट किए बिना)

मैं HDF5-जावा का नवीनतम संस्करण Maven के अनुरूप बनाएं देखा, लेकिन समझ में नहीं आया कैसे प्लेटफ़ॉर्म-विशिष्ट संस्करण का संचालन हुआ/फैसला किया है कि एक दर्द का अभी तक बहुत ज्यादा था। मान लिया जाये कि मैं HDF समूह द्वारा जारी प्लेटफ़ॉर्म-विशिष्ट जार का उपयोग कर अटक कर रहा हूँ, वहाँ एक अपेक्षाकृत अच्छी तरह से ज्यादातर Leiningen के आरामदायक दुनिया के भीतर रहने के लिए जारी है, जबकि, इन को संभालने के लिए है?

उत्तर

1

मैंने कभी यह कोशिश नहीं की है, लेकिन ऐसा लगता है कि आपको here वर्णित निर्देशिका संरचना के बाद एचडीएफ 5 लाइब्रेरी को जेएआर फ़ाइल में पैकेजिंग करके लीनिंगेन में देशी निर्भरताओं में सक्षम होना चाहिए, इसे मैवेन में स्थापित करना और एक जोड़ना project.clj में उस लाइब्रेरी पर नियमित निर्भरता। Leiningen अपने ओएस और स्थापत्य कला का पता लगाने और अपनी परियोजना classpath पर सही भागों सहित के गंदे काम संभाल चाहिए।

अधिक पढ़ने के लिए, बाहर की जाँच:

http://nakkaya.com/2010/04/05/managing-native-dependencies-with-leiningen/

http://bially.posterous.com/using-jogl-in-your-clojure-project

Clojure, Lein, JavaFx, native deps

+0

धीरे धीरे इस के माध्यम से काम करता है, तो मैं इस दृष्टिकोण काम करा सकते हैं। clojars के लिए बहुत बड़ा - एक मुश्किल सा है कि अगर मैं सिर्फ देशी शाखाओं में पूरे प्लेटफ़ॉर्म-विशिष्ट पेड़ फेंक, मैं एक 40MB जार के साथ खत्म हो गया था। इसलिए, मैं क्रॉस-प्लेटफ़ॉर्म सामग्री से प्लेटफ़ॉर्म-विशिष्ट सामग्री को अलग करने के बारे में थोड़ा अधिक स्मार्ट बनने की कोशिश कर रहा हूं। उम्मीद है कि क्लोजर्स पर चारों ओर घूमने से शार्क नहीं आते हैं। – Peter

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