Java 调用matlab函数接口
Java调用matlab函数接口有两种方式:
l一种是通过matlab把函数打成jar包;
l一种是把matlab编译成dll后,用C++再封装成java能支持的数据类型的dll。
注意:不论用这两种方式中的哪一种,最终部署时都需要matlab环境(MCR,在matlab安装路径下有)。
1.方式一:matlab直接打jar包
1.1.利用matlab自带工具打jar包
1.1.1.建立jar包
在matlab的Commond Window中输入deploytool回车,则会出现下图:
Name即给jar包起个包名,建议填写与项目名称有关系的名称;Location是打jar包的工程放到哪里;Target选择Java Package,如下图:
点击OK后会多出如下子窗口,则第一步工作完成。
1.1.2.向jar包中添加类
Java是面向对象的,所以要封装数据接口得先有个类。
点击Deployment Tool窗口中的Add Class,填写相应的类名,建议填写模块名称,如图:
1.1.3.向类中添加函数接口
假设一个函数接口写在一个m文件中,比如estimate_yaw.m中封装了函数:
function[status] = estimate_yaw(station_id, turbine_id, year_num, month_num)
% 简介: 计算指定风机在某段时间的偏航系统评分
% 输入:station_id 场站编号,数值类型
% turbine_id 风机编号,数值类型
% year_num 用于计算偏航评分的数据的年份,数值类型
% month_num 用于计算偏航评分的数据的月份,数值类型
% 输出:status 程序运行状态
end
则点击Deployment Tool窗口中的YawScore的类下面的Add Files,选择要添加的数据接口对应的m文件,比如这里是estimate_yaw.m,如图即为添加接口后的效果:
1.1.4.编译
点击Deployment Tool窗口的编译按钮接口开始编译jar包,如图: