编译 Java 引擎程序
一般要求
要为编译引擎应用程序而设置您的 Java® 环境,需要满足以下要求:
将
添加到您的 Java 类路径中。matlabroot
/extern/engines/java/jar/engine.jar使用支持的 JDK™ 版本编译引擎应用程序。有关版本信息,请参阅其他语言的 MATLAB 接口。
确保您的 JRE™ 版本不早于您的 JDK 版本。
要运行 Java,请将
文件夹添加到您的系统环境变量中。matlabroot
/bin/<arch
><
是您的计算机架构。例如,arch
>win64
适用于 64 位 Microsoft® Windows® 机器,macOS 上的 maci64
或 Linux® 上的 glnxa64
。
matlabroot
是由 MATLAB® matlabroot
命令返回的值。该命令返回安装 MATLAB 的文件夹。
下表列出了环境变量的名称和路径的值。
操作系统 | 变量 | 路径 |
---|---|---|
Windows |
|
|
macOS |
|
|
Linux |
|
|
在 Windows 上编译并运行 Java 代码
编译您的 Java 代码:
javac -classpath matlabroot\extern\engines\java\jar\engine.jar MyJavaCode.java
运行 Java 程序:
java -classpath .;matlabroot\extern\engines\java\jar\engine.jar MyJavaCode
设置系统路径
要从 Windows 命令提示符设置运行时库路径,请键入以下命令。
set PATH=matlabroot\bin\win64;%PATH%
每次您打开 Windows 命令处理器时都要设置该路径。
您还可以从“系统属性”对话框中设置 PATH
变量。从控制面板 > 系统 > 高级系统设置 > 高级选项卡上,点击环境变量。在系统变量下,选择 Path
并点击编辑。通过插入
修改 matlabroot
\bin\win64Path
;在变量 值的开头位置。点击确定关闭对话框,然后关闭控制面板对话框。
在 macOS 上编译并运行 Java 代码
用于 Java 的 MATLAB 引擎 API 仅支持 macOS 系统上的 maci64
。
编译 Java 代码:
javac -classpath matlabroot/extern/engines/java/jar/engine.jar MyJavaCode.java
指定 Java 库路径和运行程序
在一条语句中指定 Java 库路径并运行 Java 程序。
java -Djava.library.path=matlabroot/bin/maci64 -classpath .:matlabroot/extern/engines/java/jar/engine.jar MyJavaCode
设置系统变量并运行程序
设置 DYLD_LIBRARY_PATH
变量并运行 Java 程序。例如,使用 C shell:
setenv DYLD_LIBRARY_PATH matlabroot/bin/maci64:$DYLD_LIBRARY_PATH java -classpath .:matlabroot/extern/engines/java/jar/engine.jar MyJavaCode
从 C shell 设置变量
您可以将这些命令放在一个启动脚本中,如 ~/.cshrc
。
setenv DYLD_LIBRARY_PATH matlabroot/bin/maci64:$DYLD_LIBRARY_PATH
在 Bourne shell 中设置变量
您可以将这些命令放在一个启动脚本中,如 ~/.profile
。
DYLD_LIBRARY_PATH=matlabroot/bin/maci64:$DYLD_LIBRARY_PATH export DYLD_LIBRARY_PATH
使用 Java 1.8.0 版的早期内部版本
在使用 Java 1.8.0 版的早期内部版本(例如 1.8.0_111)时,可能无法识别 DYLD_LIBRARY_PATH 环境变量。如果出现 java.lang.UnsatisfiedLinkError
异常,请显式设置 java.library.path
:
java -Djava.library.path=matlabroot/bin/maci64 -classpath .:matlabroot/extern/engines/java/jar/engine.jar MyJavaCode
在 Linux 上编译并运行 Java 代码
用于 MATLAB 的 Java 引擎 API 仅支持 Linux 系统上的 glnxa64
。
编译 Java 代码:
javac -classpath matlabroot/extern/engines/java/jar/engine.jar MyJavaCode.java
指定 Java 库路径和运行程序
如果兼容的 GCC 库位于搜索路径中,则可以在 Java 库搜索路径中添加
并运行示例,而不必设置 matlabroot
/bin/glnxa64LD_LIBRARY_PATH
变量。有关支持的编译器的信息,请参阅支持和兼容的编译器。
在一条语句中指定 Java 库路径并运行 Java 程序。
java -Djava.library.path=matlabroot/bin/glnxa64 -classpath .:matlabroot/extern/engines/java/jar/engine.jar MyJavaCode
设置系统变量并运行程序
设置 LD_LIBRARY_PATH
变量并运行 Java 程序。例如,使用 C shell:
setenv LD_LIBRARY_PATH matlabroot/bin/glnxa64:matlabroot/sys/os/glnxa64:$LD_LIBRARY_PATH java -classpath .:matlabroot/extern/engines/java/jar/engine.jar MyJavaCode
从 C shell 设置变量
您可以将这些命令放在一个启动脚本中,如 ~/.cshrc
。
setenv LD_LIBRARY_PATH matlabroot/bin/glnxa64:matlabroot/sys/os/glnxa64:$LD_LIBRARY_PATH
从 Bourne shell 设置变量
您可以将这些命令放在一个启动脚本中,如 ~/.profile
。
LD_LIBRARY_PATH=matlabroot/bin/glnxa64:matlabroot/sys/os/glnxa64:$LD_LIBRARY_PATH export LD_LIBRARY_PATH