Setup the MXNet Package for Java¶
The following instructions are provided for macOS and Ubuntu. Windows is not yet available.
Note: If you use IntelliJ or a similar IDE, you may want to follow the MXNet-Java on IntelliJ tutorial instead of these instructions.
Maven¶
Setup Instructions¶
Step 1. Install dependencies:
macOS Steps
brew update
brew tap caskroom/versions
brew cask install java8
brew install opencv
brew install maven
Ubuntu Steps
These scripts will install Maven and its dependencies. You will be running the Scala scripts because the MXNet-Java project has a dependency on the MXNet-Scala project.
wget https://raw.githubusercontent.com/apache/incubator-mxnet/master/ci/docker/install/ubuntu_core.sh
wget https://raw.githubusercontent.com/apache/incubator-mxnet/master/ci/docker/install/ubuntu_scala.sh
chmod +x ubuntu_core.sh
chmod +x ubuntu_scala.sh
sudo ./ubuntu_core.sh
sudo ./ubuntu_scala.sh
Step 2. Run the demo MXNet-Java project.
Go to the MXNet-Java demo project’s README and follow the directions to test the MXNet-Java package installation.
Maven Repository¶
MXNet-Java can be easily included in your Maven managed project. The Java packages are currently available as nightly builds on Maven. Add the following Maven repository to your pom.xml
to fetch the Java packages :
<repositories>
<repository>
<id>Apache Snapshot</id>
<url>https://repository.apache.org/content/groups/snapshots</url>
</repository>
</repositories>
Also, add the dependency which corresponds to your platform to the dependencies
tag :
Linux CPU
<dependency>
<groupId>org.apache.mxnet</groupId>
<artifactId>mxnet-full_2.11-linux-x86_64-cpu</artifactId>
<version>1.3.1-SNAPSHOT</version>
</dependency>
Linux GPU
<dependency>
<groupId>org.apache.mxnet</groupId>
<artifactId>mxnet-full_2.11-linux-x86_64-gpu</artifactId>
<version>1.3.1-SNAPSHOT</version>
</dependency>
macOS CPU
<dependency>
<groupId>org.apache.mxnet</groupId>
<artifactId>mxnet-full_2.11-osx-x86_64-cpu</artifactId>
<version>1.3.1-SNAPSHOT</version>
</dependency>
The official Java Packages will be released with the release of MXNet 1.4 and will be available on MXNet Maven package repository.
Source¶
The previously mentioned setup with Maven is recommended. Otherwise, the following instructions for macOS and Ubuntu are provided for reference only:
OS | Step 1 | Step 2 |
---|---|---|
macOS | Shared Library for macOS | Scala Package for macOS |
Ubuntu | Shared Library for Ubuntu | Scala Package for Ubuntu |
Windows | Shared Library for Windows | Call for Contribution |
Build Java from an Existing MXNet Installation¶
If you have already built MXNet from source and are looking to setup Java from that point, you may simply run the following from the MXNet source root:
make scalapkg
make scalainstall
This will install both the Java Inference API and the required MXNet-Scala package.
Documentation¶
Javadocs are generated as part of the docs build pipeline. You can find them published in the Java API section of the website or by going to the scaladocs output directly.
To build the docs yourself, follow the developer build docs instructions.