मेरे पास एक एसबीटी एप्लिकेशन है जो विंडोज़ पर जावासीवी का उपयोग कर रहा है।
मेरा build.sbt जावासीवी और इसके उपयोग पर निर्भरता में लाता है:
classpathTypes += "maven-plugin"
libraryDependencies += "org.bytedeco" % "javacv" % "0.9"
यह JavaCV और उसके आश्रितों (JavaCPP) को खींचता है,लेकिन यह मंच विशिष्ट पुस्तकालयों के साथ जार को खींच नहीं रहा है (opencv-windows-x86_..jar)। यह मुझे निर्माण करने की अनुमति देता है, लेकिन मुझे "UnsatisfiedLinkError: java.library.path" में कोई jniCencv_core नहीं मिला।
पर आधारित http://www.warski.org/blog/2014/01/using-javacv-with-sbt मैंने भी कोशिश की
libraryDependencies += "org.bytedeco" % "javacv" % "0.9" classifier "windows-x86_64"
एसबीटी उस निर्भरता को हल करने की कोशिश में विफल रहता है क्योंकि वह तलाश कर रहा है http://repo1.maven.org/maven2/org/bytedeco/javacv/0.9/javacv-0.9-windows-x86_64.jar जो मौजूद नहीं है।
यदि मैं opencv-windows-x86_64.jar को लिबर डायरेक्टरी में कॉपी करता हूं तो सब कुछ काम करता है, लेकिन यह निर्भरता प्रबंधक का उपयोग करने के बिंदु को हरा देता है।
क्या कोई जानता है कि एसबीटी को ठीक से जावासीवी 0.9 के लिए प्लेटफॉर्म के विशिष्ट जार को कैसे बनाया जाए?
उत्तर:
जवाब के लिए 0 № 1का उपयोग करते हुए -Dplatform.dependencies=true
कमांड लाइन पर विकल्प चाल करना चाहिए!
जवाब के लिए 0 № 2
मैंने OpenCV निर्भरता से निपटने के लिए एक SBT प्लगइन लिखा (हाँ, प्लेटफ़ॉर्म निर्भरता सहित) एक लाइनर https://github.com/lloydmeta/sbt-opencv
बस इसे अपने में जोड़ें project/plugins.sbt
:
addSbtPlugin("com.beachape" % "sbt-opencv" % "1.4")