The filesystem JAR file includes the MapR client libraries required to connect to the cluster. While this is strongly discouraged, application developers can bundle the filesystem JAR file in MapR filesystem, HPE Ezmeral Data Fabric Database, and HPE Ezmeral Data Fabric Event Store applications instead of installing the MapR client on the edge node (node that runs the application). Applications should not bundle the filesystem JAR file unless the application meets certain requirements.
maprfs-<version>-mapr.jar) with
applications that meet all of the following requirements: When you include the filesystem JAR in an application instead of installing the MapR Client on the edge node, you must create and configure a mapr-clusters.conf file on node that runs the application.
For example, the mapr-clusters.conf on an edge node would contain the following content if it was connecting to a cluster named my.cluster with CLDB nodes on centos765, centos234, and centos123:
my.cluster secure=false centos765 centos234 centos123For more information about how to configure mapr-clusters.conf, see mapr-clusters.conf.
For more information about how the MapR client connects to the MapR cluster, see How HPE Ezmeral Data Fabric Clients Connect to the Cluster.
If you use Maven to bundle the filesystem JAR file with an application and you plan to run the application on a MapR cluster where a patch has been applied, ensure that you specify both a system scope and a local system path to the file.
pom.xml file may include the following:
...
<groupId>com.mapr.hadoop</groupId>
<artifactId>maprfs</artifactId>
<version></version>
<scope>system</scope>
<systemPath>/opt/mapr/lib/maprfs-5.2.0-mapr.jar</systemPath>
...By default, the MapR Maven repository includes JAR files from https://repository.mapr.com/maven/. This default Maven repository includes JAR files associated with the GA packages for each MapR release. Therefore, when a patch has been applied to the cluster, failure to specify a system scope may result in errors due to a binary mismatch between the filesystem JAR files used by the application and the cluster.