bytedeco / sbt-javacpp

Use JavaCPP and JavaCPP presets with ease. Base plugin for JavaCPP-related projects.

GitHub

SBT-JavaCPP Join the chat at https://gitter.im/bytedeco/sbt-javacpp Maven Central Build Status

Makes it easy to start playing around with JavaCPP in an SBT project.

Usage

In your project/plugins.sbt:

addSbtPlugin("org.bytedeco" % "sbt-javacpp" % version)

For the latest version, see the Maven badge at the top.

Adding the above line will set up your project's classpath to include maven-plugins as well as a add a dependency on the core JavaCPP library.

To add a dependency on a JavaCPP preset in your project, the following snippet will do that for you, taking care of adding the proper native preset for your target platform as well:

// in build.sbt

javaCppPresetLibs ++= Seq("opencv" -> "3.4.0", "ffmpeg" -> "3.4.1")

Customisation

By default, this plugin will download the appropriate binaries for the platform of the computer currently running SBT, you can modify this by setting it to another platform (for example, if you want to compile JARs to be run on other platforms)

javaCppPlatform := "android-arm"

Alternatively, you can set the target platform by passing a System Property: sbt.javacpp.platform, which means that you can change the target platform for your build straight from your command line.

sbt compile -Dsbt.javacpp.platform="android-arm android-x86"

In case you want to select a different javacpp version:

javaCppVersion := "1.4.3"