Fork me on GitHub

Builds

We now have reliable automated builds using Travis CI (to cover all Android, iOS, Linux, and Mac OS X builds) and AppVeyor (providing Windows builds). Thanks to both initiatives for providing such a great service to open source projects! Every pull request is built for all targets, and each commit generates a new snapshot build.

Using Snapshot Builds

These builds can be used outside of the main release cycles to test and use latest features with only two changes required.

Firstly, in your Maven settings file, for example at ~/.m2/settings.xml, add a profile like the one below to enable snapshots:

<settings>
  <profiles>
    <!-- ... -->
    <profile>
      <id>allow-snapshots</id>
      <repositories>
        <repository>
          <id>sonatype-nexus-snapshots</id>
          <url>https://oss.sonatype.org/content/repositories/snapshots</url>
          <releases>
            <enabled>false</enabled>
          </releases>
          <snapshots>
            <enabled>true</enabled>
            <updatePolicy>always</updatePolicy>
          </snapshots>
        </repository>
      </repositories>
      <pluginRepositories>
        <pluginRepository>
          <id>sonatype-nexus-snapshots</id>
          <url>https://oss.sonatype.org/content/repositories/snapshots</url>
          <releases>
            <enabled>false</enabled>
          </releases>
          <snapshots>
            <enabled>true</enabled>
            <updatePolicy>always</updatePolicy>
          </snapshots>
        </pluginRepository>
      </pluginRepositories>
    </profile>
    <!-- ... -->
  </profiles>
  <activeProfiles>
    <activeProfile>allow-snapshots</activeProfile>
  </activeProfiles>
</settings>

Secondly, update your pom.xml file to use the latest snapshot version. Taking the OpenCV presets example, the dependency in the pom.xml file would change to this:

<dependency>
  <groupId>org.bytedeco.javacpp-presets</groupId>
  <artifactId>opencv-platform</artifactId>
  <version>3.4.1-1.4.2-SNAPSHOT</version>
</dependency>

It is also advisable to specify your platform with the javacpp.platform system property and use the --update-snapshots option, for example, mvn -Djavacpp.platform=linux-x86_64 --update-snapshots [...], as binaries for all platforms may not be available at all times.

For convenience, we can browse and download JAR files manually as well from the snapshot repository:

Current Build Status

Builds information and history is available on