主要内容

本页采用了机器翻译。点击此处可查看英文原文。

设置 Java 开发环境

要将 MATLAB® 代码集成到 Java® 应用程序中,请先使用 MATLAB 桌面编写您的 MATLAB 代码。然后,使用 MATLAB Compiler SDK™ 生成 Java 包。最后,在您偏好的 Java 开发环境中完成集成过程,例如使用文本编辑器配合 OpenJDK® 命令行工具,或使用您选择的集成开发环境。

安装 JDKJRE

要开发 Java 应用程序,您必须安装正确版本的 Java 开发人员工具包 (JDK)。

如果您既不打包 MATLAB 代码,也不开发 Java 应用程序,则可以安装 Java Runtime 环境 (JRE™) 来运行 Java 应用程序,而无需安装 JDK™。

MATLAB 支持使用 OpenJDK。有关受支持的版本,请参阅按发布版本划分的与 MATLAB 兼容的 OpenJDK 版本

在 Windows® 上,您可以在安装过程中通过在自定义安装屏幕上选择设置 JAVA_HOME 变量选项,自动设置 JAVA_HOME 环境变量。

请在系统终端中输入以下内容,以验证您的 Java 安装:

java -version

设置 JAVA_HOME 环境变量

安装 JDK 或 JRE 后,如果您在安装过程中尚未将系统环境变量 JAVA_HOME 设置为您的 Java 安装文件夹,请将其设置为该文件夹。

  1. 根据您的操作系统,请参照下表永久设置 JAVA_HOME

    操作系统过程
    Windows
    1. 运行 C:\Windows\System32\SystemPropertiesAdvanced.exe 并点击环境变量... 按钮。

    2. 选择系统变量 JAVA_HOME,然后点击编辑...

      如果您没有计算机的管理员权限,请选择用户变量 JAVA_HOME 而非系统变量。

    3. 点击新建并将路径添加到您的 Java 安装文件夹中。例如,C:\Program Files\AdoptOpenJDK\jdk-8.0.282.8-hotspot

    4. 点击确定应用更改。

    Linux®

    在 Bash shell 中,输入以下命令:

    echo "export JAVA_HOME=<path_to_Java_install>" >> ~/.bash_profile
    source ~/.bash_profile

    macOS(Mojave 10.14 或更低版本)

    在 Bash shell 中,输入以下命令:

    echo "export JAVA_HOME=<path_to_Java_install>" >> ~/.profile
    source ~/.profile

    macOS(Catalina 10.15 或更高版本)

    在 Zsh shell 中,输入以下命令:

    echo "export JAVA_HOME=<path_to_Java_install>" >> ~/.zprofile
    source ~/.zprofile

  2. 如果您正在封装 MATLAB 代码,请确认 MATLAB 读取的是 JAVA_HOME 的正确值。

    在 MATLAB 命令提示符下,键入 getenv("JAVA_HOME") 以显示 JAVA_HOME 的值。

配置 Java 的编译和运行类路径

要配置 Java 的编译和执行类路径,您需要确定计划使用哪种数据 API。有两种选项:一种是 R2026a 版本中引入的现代 MATLAB Data API for Java,另一种是传统的 MWArray API。在类路径中包含哪个 JAR 文件,取决于您打算在应用程序中使用这两组数据 API 中的哪一组。有关详细信息,请参阅 选择 Java 部署选项

MATLAB Data API for Java

在编译和运行时,请将以下 JAR 文件添加到类路径中:

  • matlabruntime.jar

如果您的系统上安装了 MATLAB

C:\Program Files\MATLAB\R2026a\toolbox\javabuilder\jar\matlabruntime.jar

如果您的系统上安装了 MATLAB Runtime

C:\Program Files\MATLAB\MATLAB Runtime\R2026a\toolbox\javabuilder\jar\matlabruntime.jar

在使用 MATLAB Data API for Java 时,打包过程结束时不会生成 JAR 文件。相反,系统会创建一个可部署的存档文件(.ctf 文件)。该文件无需放入类路径中。相反,Java 应用程序必须通过将位置作为参量传递给 com.mathworks.runtime.MatlabRuntime 类,以编程方式指定其位置。

例如,您可以像下面这样在编译时指定类路径:

javac -classpath "matlabroot/toolbox/javabuilder/jar/matlabruntime.jar" MyApp.java

例如,您可以按以下方式在运行时指定类路径:

java -classpath "matlabroot/toolbox/javabuilder/jar/matlabruntime.jar" MyApp
请将 matlabroot 替换为您 MATLAB 安装目录的完整路径。

MWArray API

在编译和运行时,请将以下 JAR 文件添加到类路径中:

  • javabuilder.jar

  • MATLAB Compiler SDK 生成的 JAR 文件

如果您的系统上安装了 MATLAB

C:\Program Files\MATLAB\R2026a\toolbox\javabuilder\jar\javabuilder.jar

如果您的系统上安装了 MATLAB Runtime

C:\Program Files\MATLAB\MATLAB Runtime\R2026a\toolbox\javabuilder\jar\javabuilder.jar

在使用 MWArray API 时,MATLAB Compiler SDK 将 MATLAB 代码打包成一个 JAR 文件。此 JAR 文件必须与 javabuilder.jar 一起添加到 Java 应用程序的类路径中。Java 应用程序可以通过引用 JAR 文件中提供的类和方法,来访问打包好的 MATLAB 代码。与 MATLAB Data API for Java 不同,无需通过编程方式指定 .ctf 文件的位置,因为所有必要的 Java 类都已包含在 JAR 文件中。

例如,您可以像下面这样在编译时指定类路径:

javac -classpath "matlabroot/toolbox/javabuilder/jar/javabuilder.jar;.\MyPackagedMatlabCode.jar" MyApp.java

例如,您可以按以下方式在运行时指定类路径:

java -classpath "matlabroot/toolbox/javabuilder/jar/javabuilder.jar;.\MyPackagedMatlabCode.jar" MyApp
请将 matlabroot 替换为您 MATLAB 安装目录的完整路径。

配置运行时库的本地库访问

要运行使用由 MATLAB Compiler SDK 生成的组件的 Java 应用程序,Java 虚拟机 (JVM) 必须能够定位 MATLAB 或 MATLAB Runtime 中包含的本机库。这些是特定于平台的文件(.dll.so.dylib),用于加载和执行打包的 MATLAB 代码。

要使这些库可用,请通过修改相应的环境变量来更新操作系统的原生库搜索路径。

平台环境变量
WindowsPATH
LinuxLD_LIBRARY_PATH
macOSDYLD_LIBRARY_PATH

有关详细信息,请参阅 设置 MATLAB 库路径以测试已部署的应用程序

小心

在安装了完整 MATLAB 版本的计算机上测试应用程序时,您可以使用 MATLAB 安装来配置对原生库的访问。

在使用 MATLAB Runtime 的部署场景中,您必须在 MATLAB Runtime 的安装目录中明确指定本机库的位置。这种区分确保了已部署的应用程序能够独立于完整的 MATLAB 安装环境运行。

另请参阅

主题