创建使用多个 MATLAB 函数的 Java 应用程序
此示例说明如何创建一个使用多个 Java® 函数来分析信号然后绘制结果图形的 MATLAB® 应用程序。
在此示例中,您执行以下步骤:
使用 MATLAB Compiler SDK™ 创建一个包,其中包含具有自动封装的私有方法的类。
在 MATLAB 应用程序中访问 Java 函数,包括使用
MWArray类层次结构来表示数据。构建并运行应用程序。
spectralanalysis 应用程序
spectralanalysis 应用程序分析信号并绘制结果图形。fourier 类对输入数据数组执行快速傅里叶变换 (FFT)。此类的方法 computefft 将该 FFT 的结果作为两个输出数组返回 - 频率点数数组和功率谱密度。
第二种方法 plotfft 绘制返回的数据图形。这两个方法 computefft 和 plotfft 封装了 MATLAB 函数。
文件
| MATLAB 函数 | computefft.mplotfft.m |
| MATLAB 函数位置 | |
| Java 代码位置 | |
过程
将 MATLAB 附带的
SpectraExample文件夹复制到您的工作文件夹:copyfile(fullfile(matlabroot,'toolbox','javabuilder','Examples','SpectraExample'),'SpectraExample')
在 MATLAB 命令提示符下,导航到工作文件夹中的新
SpectraExample\SpectraDemoComp子文件夹。检查 MATLAB 函数
computefft.m和plotfft.m。使用 Java 包编译器或
compiler.build.javaPackage构建 Java 包。将以下信息用于您的工程:
工程名称 spectralanalysis类名 fourier要编译的文件 plotfft.m注意
在这个示例中,使用
fourier类的应用程序不会直接调用computefft。只有computefft方法才需要plotfft方法。您不需要手动将computefft函数添加到包中,因为编译器会在依赖关系分析期间自动将其包含进去。例如,如果您使用的是
compiler.build.javaPackage,请输入:buildResults = compiler.build.javaPackage('plotfft.m', ... 'PackageName','spectralanalysis', ... 'ClassName','fourier');
有关详细信息,请参阅生成 Java 包并编译 Java 应用程序中的说明。
为访问 MATLAB 函数的 Java 应用程序编写源代码。
此示例的示例应用程序位于
SpectraExample\SpectraDemoJavaApp\powerspect.java中。程序执行以下操作:
构造一个输入数组,其值表示一个随机信号,其中包含两个频率分别为 15 Hz 和 40 Hz 的正弦波
创建包含数据的
MWNumericArray数组data = MWNumericArray.newInstance(dims, MWClassID.DOUBLE, MWComplexity.REAL);
实例化
fourier对象调用
plotfft方法,该方法调用computeftt并绘制数据使用
try-catch代码块处理异常使用
MWArray方法释放本机资源
在 MATLAB 中,导航到
SpectraDemoJavaApp文件夹。将生成的
spectralanalysis.jar包复制到此文件夹中。例如,如果您使用了compiler.build.javaPackage,请输入:copyfile(fullfile('..','SpectraDemoComp','spectralanalysisjavaPackage','spectralanalysis.jar'))
打开命令提示符窗口并导航到
SpectraDemoJavaApp文件夹。使用
powerspect.java编译javac应用程序。在 Windows® 上,执行以下命令:
javac -classpath "<matlabroot>\toolbox\javabuilder\jar\javabuilder.jar";.\spectralanalysis.jar powerspect.java
在 UNIX® 上,执行以下命令:
javac -classpath "<matlabroot>/toolbox/javabuilder/jar/javabuilder.jar":./spectralanalysis.jar powerspect.java
将
替换为 MATLAB 或 MATLAB Runtime 安装文件夹的路径。例如,在 Windows 上,路径可能为matlabrootC:\Program Files\MATLAB\R2025a。运行
powerspect应用程序。在 Windows 上,执行以下命令:
java -classpath .;"matlabroot\toolbox\javabuilder\jar\javabuilder.jar";.\spectralanalysis.jar powerspect
在 UNIX 上,执行以下命令:
java -classpath .:"matlabroot/toolbox/javabuilder/jar/javabuilder.jar":./spectralanalysis.jar powerspect
注意
如果您在 Mac 64 位平台上运行该应用程序,则必须在 Java 命令中添加
-d64标志。powerspect程序显示以下输出:
另请参阅
compiler.build.javaPackage | Java 包编译器
