/ / SBCでJavaCV 0.9プラットフォームのバイナリを自動的にダウンロードする方法 - sbt、javacv

JavaCV 0.9プラットフォームバイナリをSBT-sbt、javacvで自動的にダウンロードする

Windows上でJavaCVを使用しているSBTアプリケーションがあります。

私のbuild.sbtは、JavaCVとその依存関係を次のものを使って持ち込みます。

classpathTypes += "maven-plugin"

libraryDependencies += "org.bytedeco" % "javacv" % "0.9"

これは、JavaCVとその依存物(JavaCPP)を引っ張ります。しかし、プラットフォーム固有のライブラリ(opencv-windows-x86_64.jar)でJARを引っ張るのではありません。これでビルドできますが、java.library.pathの "UnsatisfiedLinkError:no jniopencv_core"と表示されます。

に基づく http://www.warski.org/blog/2014/01/using-javacv-with-sbt 私もやった

libraryDependencies += "org.bytedeco" % "javacv" % "0.9" classifier "windows-x86_64"

それが探しているのでSBTはその依存関係を解決することを試みません http://repo1.maven.org/maven2/org/bytedeco/javacv/0.9/javacv-0.9-windows-x86_64.jar 存在しません。

libディレクトリにopencv-windows-x86_64.jarをコピーすれば、すべてうまくいきますが、それは依存関係マネージャを使うことの意味を失います。

SBCでJavaCV 0.9のプラットフォーム固有のjarを正しく解決する方法を知っている人はいますか?

回答:

回答№1は0

を使用する -Dplatform.dependencies=true コマンドラインのオプションはトリックをする必要があります!


回答№2の場合は0

私はSBCプラグインを書き、OpenCVの依存関係処理(そう、プラットフォームの依存関係も含む)をワンライナーにしました。 https://github.com/lloydmeta/sbt-opencv

単にこれをあなたの project/plugins.sbt

addSbtPlugin("com.beachape" % "sbt-opencv" % "1.4")