4.2.1 获取、安装和设置 MySQL NDB Cluster Connector for Java

本节讨论如何获取 ClusterJ 源代码和二进制文件,以及如何编译、安装和开始使用 ClusterJ。

获取并安装 MySQL NDB Cluster Connector for Java。 您可以从downloads.mysql.com 获取最新的 NDB Cluster 版本,其中包括 ClusterJ 。NDB Cluster Installation中给出的安装说明 也安装了 ClusterJ。

从源代码构建和安装 MySQL NDB Cluster Connector for Java。  您可以构建和安装 ClusterJ 作为 构建和安装 NDB Cluster的一部分,这始终需要您使用 CMake 选项 WITH_NDBCLUSTER_STORAGE_ENGINE(或其别名WITH_NDBCLUSTER)配置构建。

用于为支持 ClusterJ 的 NDB Cluster 配置构建的典型 CMake 命令可能如下所示:

cmake .. -DWITH_BOOST=/usr/local/boost_1_59_0 -DWITH_NDBCLUSTER=ON

默认情况下启用该WITH_NDB_JAVA选项,这意味着 ClusterJ 是通过上述命令与 NDB Cluster 一起构建的。但是,如果 CMake 无法在您的系统上找到 Java 的位置,则配置过程将会失败;如果需要,使用该 WITH_CLASSPATH选项提供 Java 类路径。此外,因为 ClusterJ 使用 ucs2字符集进行内部存储,没有它就无法构建 ClusterJ,如果您使用 WITH_EXTRA_CHARSETSCMake 选项并更改其默认设置的值 all,则应确保 ucs2在传递给的字符集列表中指定了选项。有关可以使用的其他 CMake 选项的信息,请参阅 option_cmake_with_ndbcluster.

使用 CMake 配置构建后,像往常一样运行 makemake install来编译和安装 NDB Cluster 软件。

用于 Java jar 文件的 MySQL NDB Cluster 连接器。  安装后,这些 ClusterJ jar 文件可以在share/javaMySQL 安装目录下的文件夹中找到( /usr/local/mysqlLinux 平台默认情况下):

  • clusterj-api-version.jar:这是编译 ClusterJ 应用程序代码所需的编译时 jar 文件。

  • clusterj-version.jar:这是执行 ClusterJ 应用程序所需的运行时库。

  • clusterj-test-version.jar:这是 ClusterJ 测试套件,用于测试您的 ClusterJ 安装。

使用 Maven 构建 ClusterJ

ClusterJ的源文件配置为Maven工程,方便使用Maven编译安装。假设您已经获得 NDB Cluster 源并且已经按照上面给出的说明编译和安装了 NDB Cluster 和 ClusterJ,这些是要采取的步骤:

  1. 添加包含 NDB 客户端库 ( libndbclient.so) 的文件夹的文件路径作为命名ndbclient.lib为本地 Maven settings.xml文件的属性(在本地 Maven 存储库中找到,通常 用于 Linux 平台)。客户端库位于NDB Cluster 安装文件夹的文件夹下。如果您的本地 Maven 存储库中不存在,请创建一个。这是一个包含属性的简单文件的样子: /home/username/.m2libsettings.xmlsettings.xmlndbclient.lib

    <settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
                          http://maven.apache.org/xsd/settings-1.0.0.xsd">
      <profiles>
        <profile>
          <id>jni-library</id>
          <activation>
            <activeByDefault>true</activeByDefault>
          </activation> 
          <properties>
            <ndbclient.lib>/NDB_Cluster_installation_directory/lib/</ndbclient.lib>
          </properties>
        </profile>
      </profiles>
    
    </settings>
  2. 转到您在编译 NDB Cluster 时创建的构建目录(在Build the Distributionbld中的示例步骤中 ),然后转到 它下面的文件夹。运行 文件夹中的脚本: storage/ndb/clusterjmvn_install_ndbjtie.sh

    ./mvn_install_ndbjtie.sh

    它安装ndbjtie.jar,它为 ClusterJ 提供 JNI 层,并且是构建 CluterJ 所必需的。

  3. 通过在 目录中运行mvn install 来使用 Maven 安装 ClusterJ storage/ndb/clusterj

    mvn install

    这会导致构建 ClusterJ,并将生成的 .jar文件安装在本地 Maven 存储库中。

    笔记

    skipTests您可以通过向命令 添加选项来跳过在安装过程结束时进行的测试 :

    mvn install -DskipTests

    这可以防止您的安装因您尚未设置测试环境而失败。

在 IDE 中使用 Maven 构建 ClusterJ

因为 ClusterJ 的源文件被配置为 Maven 项目,所以您可以轻松地将它们导入到您最喜欢的支持 Maven 的 IDE 中,自定义它们,并根据需要按照以下步骤重建它们:

  1. 确保您的 IDE 对 Maven 的支持已启用。为此,您可能需要安装 Maven 插件。

  2. 按照使用 Maven 构建 ClusterJ中的步骤 1 和 2 ,使 ClusterJ 源准备好与 Maven 一起使用。

  3. 将 ClusterJ 作为 Maven 项目导入。这是在一些流行的 IDE 中的做法:

    在 NetBeans 中:

    • 在主菜单中,选择“文件” > “打开项目”打开项目对话框 出现

    • 在“打开项目”对话框中,浏览到storage/ndb构建目录下的文件夹(请参阅 使用 Maven 构建 ClusterJ中的步骤 2 );选择 旁边clusterj有 Maven 图标 ( Maven图标) 的文件夹,然后单击Open Project。项目ClusterJ Aggregate被导入,带有 ClusterJ APIClusterJ CoreClusterJ Test SuiteClusterJ TieClusterJ Unit Test Framework作为子项目导入到Modules下。

    • 像处理 NetBeans 中的任何其他 Maven 项目一样处理 ClusterJ 项目。对源代码的任何更改都会进入您编译 NDB Cluster 以创建构建目录的源代码树。

    在 Eclipse 中:

    • 在主菜单中,选择文件> 导入。出现 导入对话框

    • Import对话框中,选择 Maven > Existing Maven Projects for import wizard 并单击 Next。出现“导入 Maven 项目”对话框。

    • Import Maven Projects对话框中,浏览到storage/ndb构建目录下的文件夹(参见 使用 Maven 构建 ClusterJ中的步骤 2 );选择 clusterj文件夹并单击 “选择文件夹” 。该 clusterj-aggregate项目及其子项目clusterj-apiclusterj-coreclusterj-test和 出现在“ Maven 项目”对话框中clusterj-tie。 单击 全选然后 完成clusterj-unit. 所有 ClusterJ 项目都已导入。

    • 像处理 Eclipse 中的任何其他 Maven 项目一样处理 ClusterJ 项目。