/ / Téléchargement automatique des fichiers binaires de la plate-forme JavaCV 0.9 avec SBT - sbt, javacv

Téléchargement automatique des fichiers binaires de la plate-forme JavaCV 0.9 avec SBT - sbt, javacv

J'ai une application SBT qui utilise JavaCV sous Windows.

Mon build.sbt apporte JavaCV et ses dépendances en utilisant:

classpathTypes += "maven-plugin"

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

Ceci tire JavaCV et ses dépendants (JavaCPP),mais il ne faut pas extraire le fichier JAR avec les bibliothèques spécifiques à la plate-forme (opencv-windows-x86_64.jar). Cela me permet de construire, mais le message "UnsatisfiedLinkError: no jniopencv_core dans java.library.path"

Basé sur http://www.warski.org/blog/2014/01/using-javacv-with-sbt J'ai aussi essayé

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

SBT ne parvient pas à résoudre cette dépendance car il recherche http://repo1.maven.org/maven2/org/bytedeco/javacv/0.9/javacv-0.9-windows-x86_64.jar qui n'existe pas.

Si je copie opencv-windows-x86_64.jar dans le répertoire lib, alors tout fonctionne, mais cela écarte le point d'utiliser un gestionnaire de dépendances.

Est-ce que quelqu'un sait comment SBT résoudre correctement les fichiers JAR spécifiques à la plate-forme pour JavaCV 0.9?

Réponses:

0 pour la réponse № 1

En utilisant le -Dplatform.dependencies=true l'option sur la ligne de commande devrait faire l'affaire!


0 pour la réponse № 2

J'ai écrit un plugin SBT pour rendre la gestion des dépendances OpenCV (oui, y compris les dépendances de plate-forme) en une ligne: https://github.com/lloydmeta/sbt-opencv

Ajoutez simplement ceci à votre project/plugins.sbt:

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